criteo-api-retailmedia-sdk 0.0.250327__py3-none-any.whl → 0.0.250425__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 (205) hide show
  1. criteo_api_retailmedia_preview/__init__.py +1 -1
  2. criteo_api_retailmedia_preview/api/accounts_api.py +187 -35
  3. criteo_api_retailmedia_preview/api/analytics_api.py +144 -2
  4. criteo_api_retailmedia_preview/api/balance_api.py +12 -12
  5. criteo_api_retailmedia_preview/api/campaign_api.py +88 -509
  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/account_fees_search_request.py +257 -0
  9. criteo_api_retailmedia_preview/model/account_fees_update_request.py +278 -0
  10. criteo_api_retailmedia_preview/model/account_fees_update_result.py +261 -0
  11. criteo_api_retailmedia_preview/model/add_remove_keyword_model.py +8 -8
  12. criteo_api_retailmedia_preview/model/add_remove_keywords_model_resource.py +4 -4
  13. criteo_api_retailmedia_preview/model/application_summary_model.py +8 -8
  14. criteo_api_retailmedia_preview/model/application_summary_model_resource.py +4 -4
  15. criteo_api_retailmedia_preview/model/application_summary_model_response.py +5 -5
  16. criteo_api_retailmedia_preview/model/async_accounts_report.py +73 -73
  17. criteo_api_retailmedia_preview/model/async_accounts_report_resource.py +4 -4
  18. criteo_api_retailmedia_preview/model/async_campaigns_report.py +79 -79
  19. criteo_api_retailmedia_preview/model/async_campaigns_report_resource.py +4 -4
  20. criteo_api_retailmedia_preview/model/async_fill_rate_report.py +14 -14
  21. criteo_api_retailmedia_preview/model/async_fill_rate_report_resource.py +4 -4
  22. criteo_api_retailmedia_preview/model/async_line_items_report.py +79 -79
  23. criteo_api_retailmedia_preview/model/async_line_items_report_resource.py +4 -4
  24. criteo_api_retailmedia_preview/model/{common_error.py → async_offsite_report.py} +185 -45
  25. criteo_api_retailmedia_preview/model/{grant_consent_input.py → async_offsite_report_request.py} +8 -8
  26. criteo_api_retailmedia_preview/model/{grant_consent_model_value_resource.py → async_offsite_report_resource.py} +9 -9
  27. criteo_api_retailmedia_preview/model/async_report_response.py +5 -5
  28. criteo_api_retailmedia_preview/model/audience_error.py +16 -16
  29. criteo_api_retailmedia_preview/model/audience_warning.py +22 -22
  30. criteo_api_retailmedia_preview/model/balance_history_change_data_capture_v1.py +14 -14
  31. criteo_api_retailmedia_preview/model/balance_response_v2.py +45 -45
  32. criteo_api_retailmedia_preview/model/balance_response_v2_response.py +5 -5
  33. criteo_api_retailmedia_preview/model/bot_message.py +4 -4
  34. criteo_api_retailmedia_preview/model/brand_catalog_request_v2.py +9 -9
  35. criteo_api_retailmedia_preview/model/brand_id_search_request.py +11 -5
  36. criteo_api_retailmedia_preview/model/brand_id_search_result.py +15 -9
  37. criteo_api_retailmedia_preview/model/brand_preview_list_response.py +5 -5
  38. criteo_api_retailmedia_preview/model/catalog_status_v2.py +12 -12
  39. criteo_api_retailmedia_preview/model/category202204.py +8 -8
  40. criteo_api_retailmedia_preview/model/change_dates_of_balance_v2.py +4 -4
  41. criteo_api_retailmedia_preview/model/change_details_v1.py +8 -8
  42. criteo_api_retailmedia_preview/model/common_problem.py +20 -20
  43. criteo_api_retailmedia_preview/model/cpc_rate_card_preview.py +4 -4
  44. criteo_api_retailmedia_preview/model/cpc_rate_card_preview_response.py +5 -5
  45. criteo_api_retailmedia_preview/model/create_balance_v2.py +12 -12
  46. criteo_api_retailmedia_preview/model/creative2.py +50 -50
  47. criteo_api_retailmedia_preview/model/creative2_list_response.py +5 -5
  48. criteo_api_retailmedia_preview/model/creative2_response.py +5 -5
  49. criteo_api_retailmedia_preview/model/demand_managed_fee.py +267 -0
  50. criteo_api_retailmedia_preview/model/entity_resource_brand_id_search_result.py +12 -5
  51. criteo_api_retailmedia_preview/model/entity_resource_collection_outcome_brand_id_search_result_paging_offset_limit_metadata.py +17 -10
  52. criteo_api_retailmedia_preview/model/entity_resource_collection_outcome_line_item_keyword_review_report_and_metadata.py +9 -9
  53. criteo_api_retailmedia_preview/model/entity_resource_collection_outcome_of_retail_media_child_account_and_metadata.py +9 -9
  54. criteo_api_retailmedia_preview/model/entity_resource_line_item_keyword_review_report.py +4 -4
  55. criteo_api_retailmedia_preview/model/{resource_of_catalog_status_v2.py → entity_resource_of_catalog_status_v2.py} +7 -7
  56. criteo_api_retailmedia_preview/model/entity_resource_of_retail_media_child_account.py +4 -4
  57. criteo_api_retailmedia_preview/model/{catalog_status_v2_response.py → entity_resource_outcome_of_catalog_status_v2.py} +18 -18
  58. criteo_api_retailmedia_preview/model/entity_resource_outcome_partner_billing_report_status_v1.py +5 -5
  59. criteo_api_retailmedia_preview/model/entity_resource_partner_billing_report_status_v1.py +4 -4
  60. criteo_api_retailmedia_preview/model/export_report_column.py +30 -30
  61. criteo_api_retailmedia_preview/model/external_line_item_capping_v2.py +9 -9
  62. criteo_api_retailmedia_preview/model/external_line_item_page_v2.py +3 -3
  63. criteo_api_retailmedia_preview/model/external_preferred_line_item_create_model_v2.py +24 -24
  64. criteo_api_retailmedia_preview/model/external_preferred_line_item_update_model_v2.py +20 -20
  65. criteo_api_retailmedia_preview/model/external_preferred_line_item_v2.py +36 -36
  66. criteo_api_retailmedia_preview/model/external_product_button_request.py +8 -8
  67. criteo_api_retailmedia_preview/model/external_product_button_response.py +14 -14
  68. criteo_api_retailmedia_preview/model/external_retail_media_child_account.py +22 -22
  69. criteo_api_retailmedia_preview/model/input_resource_of_preferred_line_item_create_model_v2.py +4 -4
  70. criteo_api_retailmedia_preview/model/installment.py +4 -4
  71. criteo_api_retailmedia_preview/model/keyword_data_model.py +12 -12
  72. criteo_api_retailmedia_preview/model/keywords_model_resource.py +4 -4
  73. criteo_api_retailmedia_preview/model/keywords_model_response.py +4 -4
  74. criteo_api_retailmedia_preview/model/line_item_keyword_review_report.py +32 -32
  75. criteo_api_retailmedia_preview/model/{input_keywords.py → managed_service_fee.py} +31 -17
  76. criteo_api_retailmedia_preview/model/message.py +4 -4
  77. criteo_api_retailmedia_preview/model/message_error.py +8 -8
  78. criteo_api_retailmedia_preview/model/metadata.py +8 -8
  79. criteo_api_retailmedia_preview/model/outcome.py +5 -5
  80. criteo_api_retailmedia_preview/model/page_metadata.py +16 -16
  81. criteo_api_retailmedia_preview/model/page_of_balance_history_change_data_capture_v1.py +8 -8
  82. criteo_api_retailmedia_preview/model/page_type_environment2.py +14 -14
  83. criteo_api_retailmedia_preview/model/paged_resource_collection_outcome_of_balance_response_v2.py +9 -9
  84. criteo_api_retailmedia_preview/model/paging_offset_limit_metadata.py +15 -9
  85. criteo_api_retailmedia_preview/model/partner_billing_report_request_v1.py +12 -14
  86. criteo_api_retailmedia_preview/model/partner_billing_report_status_v1.py +8 -8
  87. criteo_api_retailmedia_preview/model/placement_preview.py +24 -24
  88. criteo_api_retailmedia_preview/model/placement_preview_list_response.py +5 -5
  89. criteo_api_retailmedia_preview/model/preferred_line_item_v2_paged_list_response.py +9 -9
  90. criteo_api_retailmedia_preview/model/preferred_line_item_v2_response.py +5 -5
  91. criteo_api_retailmedia_preview/model/{recommended_keywords_result.py → private_market_account_fees.py} +13 -13
  92. criteo_api_retailmedia_preview/model/private_market_fees.py +276 -0
  93. criteo_api_retailmedia_preview/model/problem_details.py +20 -20
  94. criteo_api_retailmedia_preview/model/product.py +242 -242
  95. criteo_api_retailmedia_preview/model/product_button_list_response.py +5 -5
  96. criteo_api_retailmedia_preview/model/product_importer_error.py +20 -20
  97. criteo_api_retailmedia_preview/model/product_importer_warning.py +20 -20
  98. criteo_api_retailmedia_preview/model/product_metadata.py +8 -8
  99. criteo_api_retailmedia_preview/model/product_recommendation.py +16 -16
  100. criteo_api_retailmedia_preview/model/product_shipping.py +16 -16
  101. criteo_api_retailmedia_preview/model/product_shipping_dimension.py +4 -4
  102. criteo_api_retailmedia_preview/model/product_shipping_weight.py +4 -4
  103. criteo_api_retailmedia_preview/model/product_tax.py +12 -12
  104. criteo_api_retailmedia_preview/model/product_unit_pricing_base_measure.py +4 -4
  105. criteo_api_retailmedia_preview/model/product_unit_pricing_measure.py +4 -4
  106. criteo_api_retailmedia_preview/model/products_custom_batch_request_entry.py +8 -8
  107. criteo_api_retailmedia_preview/model/promoted_product.py +4 -4
  108. criteo_api_retailmedia_preview/model/promoted_product_resource.py +4 -4
  109. criteo_api_retailmedia_preview/model/promoted_product_resource_collection_outcome.py +8 -8
  110. criteo_api_retailmedia_preview/model/report_data_response_resource.py +4 -4
  111. criteo_api_retailmedia_preview/model/report_detail_error.py +14 -14
  112. criteo_api_retailmedia_preview/model/report_detail_errors.py +8 -8
  113. criteo_api_retailmedia_preview/model/report_detail_warning.py +14 -14
  114. criteo_api_retailmedia_preview/model/report_ok_response.py +20 -20
  115. criteo_api_retailmedia_preview/model/report_outcome.py +5 -5
  116. criteo_api_retailmedia_preview/model/report_response.py +9 -9
  117. criteo_api_retailmedia_preview/model/resource_of_preferred_line_item_update_model_v2.py +4 -4
  118. criteo_api_retailmedia_preview/model/resource_of_preferred_line_item_v2.py +4 -4
  119. criteo_api_retailmedia_preview/model/resource_of_seller_preview.py +4 -4
  120. criteo_api_retailmedia_preview/model/resource_of_sku_data_preview.py +4 -4
  121. criteo_api_retailmedia_preview/model/resource_of_sku_search_request_preview.py +4 -4
  122. criteo_api_retailmedia_preview/model/retail_media_contactlist_amendment_attributes.py +8 -8
  123. criteo_api_retailmedia_preview/model/retail_media_seller.py +8 -8
  124. criteo_api_retailmedia_preview/model/rm_algebra_node_v1.py +8 -8
  125. criteo_api_retailmedia_preview/model/rm_audience_entity_v1.py +20 -20
  126. criteo_api_retailmedia_preview/model/rm_audience_entity_v1_rm_audience_search_metadata_v1_list_response.py +9 -9
  127. criteo_api_retailmedia_preview/model/rm_audience_search_entity_v1.py +4 -4
  128. criteo_api_retailmedia_preview/model/rm_audience_search_entity_v1_resource.py +4 -4
  129. criteo_api_retailmedia_preview/model/rm_audience_search_metadata_v1.py +4 -4
  130. criteo_api_retailmedia_preview/model/rm_audience_segment_create_entity_v1.py +4 -4
  131. criteo_api_retailmedia_preview/model/rm_audience_segment_create_entity_v1_resource.py +4 -4
  132. criteo_api_retailmedia_preview/model/rm_audience_segment_entity_v1.py +30 -30
  133. criteo_api_retailmedia_preview/model/rm_audience_segment_entity_v1_list_response.py +5 -5
  134. criteo_api_retailmedia_preview/model/rm_audience_segment_entity_v1_rm_audience_segment_search_metadata_v1_list_response.py +9 -9
  135. criteo_api_retailmedia_preview/model/rm_audience_segment_id_entity_v1_list_response.py +5 -5
  136. criteo_api_retailmedia_preview/model/rm_audience_segment_search_entity_v1.py +4 -4
  137. criteo_api_retailmedia_preview/model/rm_audience_segment_search_entity_v1_resource.py +4 -4
  138. criteo_api_retailmedia_preview/model/rm_audience_segment_search_metadata_v1.py +4 -4
  139. criteo_api_retailmedia_preview/model/rm_audience_segment_update_entity_v1.py +8 -8
  140. criteo_api_retailmedia_preview/model/rm_contact_list_statistics_entity_v1.py +4 -4
  141. criteo_api_retailmedia_preview/model/rm_contact_list_statistics_entity_v1_response.py +5 -5
  142. criteo_api_retailmedia_preview/model/rm_contact_list_v1.py +4 -4
  143. criteo_api_retailmedia_preview/model/rm_events_v1.py +23 -23
  144. criteo_api_retailmedia_preview/model/rmca_common_problem.py +16 -16
  145. criteo_api_retailmedia_preview/model/sdk_api_rest_common_problem.py +16 -16
  146. criteo_api_retailmedia_preview/model/seller_catalog_request_v2.py +8 -8
  147. criteo_api_retailmedia_preview/model/seller_preview_response.py +5 -5
  148. criteo_api_retailmedia_preview/model/set_bid_model.py +4 -4
  149. criteo_api_retailmedia_preview/model/set_bids_model_resource.py +4 -4
  150. criteo_api_retailmedia_preview/model/sku_data_preview.py +60 -60
  151. criteo_api_retailmedia_preview/model/sku_data_preview_list_response.py +5 -5
  152. criteo_api_retailmedia_preview/model/sku_min_bid.py +8 -8
  153. criteo_api_retailmedia_preview/model/sku_search_request_preview.py +17 -17
  154. criteo_api_retailmedia_preview/model/sku_search_request_slim_preview.py +8 -8
  155. criteo_api_retailmedia_preview/model/sku_slim_data_preview.py +30 -30
  156. criteo_api_retailmedia_preview/model/sku_slim_data_preview_list_response.py +5 -5
  157. criteo_api_retailmedia_preview/model/sku_slim_data_v2.py +24 -24
  158. criteo_api_retailmedia_preview/model/sku_slim_data_v2_list_response.py +5 -5
  159. criteo_api_retailmedia_preview/model/status_response.py +20 -20
  160. criteo_api_retailmedia_preview/model/sync_attributed_transactions_report.py +41 -41
  161. criteo_api_retailmedia_preview/model/sync_attributed_transactions_report_resource.py +4 -4
  162. criteo_api_retailmedia_preview/model/sync_campaigns_report.py +48 -48
  163. criteo_api_retailmedia_preview/model/sync_campaigns_report_resource.py +4 -4
  164. criteo_api_retailmedia_preview/model/sync_line_items_report.py +52 -52
  165. criteo_api_retailmedia_preview/model/sync_line_items_report_resource.py +4 -4
  166. criteo_api_retailmedia_preview/model/template_variable_value.py +4 -4
  167. criteo_api_retailmedia_preview/model/update_balance_model_v2.py +8 -8
  168. criteo_api_retailmedia_preview/model/value_resource_account_fees_search_request.py +266 -0
  169. criteo_api_retailmedia_preview/model/value_resource_account_fees_update_request.py +266 -0
  170. criteo_api_retailmedia_preview/model/{value_resource_of_recommended_keywords_result.py → value_resource_account_fees_update_result.py} +11 -11
  171. criteo_api_retailmedia_preview/model/value_resource_brand_id_search_request.py +12 -5
  172. criteo_api_retailmedia_preview/model/value_resource_collection_outcome_of_seller_search_result.py +5 -5
  173. criteo_api_retailmedia_preview/model/{line_item_bid_multipliers_v2_response.py → value_resource_collection_outcome_private_market_account_fees_and_metadata.py} +26 -27
  174. criteo_api_retailmedia_preview/model/value_resource_cpc_min_bids_request.py +4 -4
  175. criteo_api_retailmedia_preview/model/value_resource_cpc_min_bids_response.py +4 -4
  176. criteo_api_retailmedia_preview/model/value_resource_input_account_fees_search_request.py +262 -0
  177. criteo_api_retailmedia_preview/model/value_resource_input_account_fees_update_request.py +262 -0
  178. criteo_api_retailmedia_preview/model/value_resource_input_brand_id_search_request.py +8 -1
  179. criteo_api_retailmedia_preview/model/{line_item_bid_multipliers_v2_request.py → value_resource_input_of_brand_catalog_request_v2.py} +8 -8
  180. criteo_api_retailmedia_preview/model/{json_api_request_of_brand_catalog_request_v2.py → value_resource_input_of_seller_catalog_request_v2.py} +8 -8
  181. criteo_api_retailmedia_preview/model/{json_api_body_without_id_of_brand_catalog_request_v2_and_brand_catalog_request_v2.py → value_resource_of_brand_catalog_request_v2.py} +10 -16
  182. criteo_api_retailmedia_preview/model/{json_api_body_without_id_of_seller_catalog_request_v2_and_seller_catalog_request_v2.py → value_resource_of_seller_catalog_request_v2.py} +10 -16
  183. criteo_api_retailmedia_preview/model/value_resource_of_seller_search.py +4 -4
  184. criteo_api_retailmedia_preview/model/value_resource_of_seller_search_result.py +4 -4
  185. criteo_api_retailmedia_preview/model/{value_resource_outcome_of_recommended_keywords_result.py → value_resource_outcome_account_fees_update_result.py} +18 -18
  186. criteo_api_retailmedia_preview/model/value_resource_outcome_cpc_min_bids_response.py +5 -5
  187. criteo_api_retailmedia_preview/model/value_resource_outcome_retail_media_keywords_review_result.py +5 -5
  188. criteo_api_retailmedia_preview/model/value_resource_partner_billing_report_request_v1.py +4 -4
  189. criteo_api_retailmedia_preview/model/value_resource_private_market_account_fees.py +266 -0
  190. criteo_api_retailmedia_preview/model/value_resource_retail_media_keywords_review.py +4 -4
  191. criteo_api_retailmedia_preview/model/value_resource_retail_media_keywords_review_result.py +4 -4
  192. criteo_api_retailmedia_preview/model/video_variable_value.py +16 -16
  193. criteo_api_retailmedia_preview/models/__init__.py +24 -22
  194. {criteo_api_retailmedia_sdk-0.0.250327.dist-info → criteo_api_retailmedia_sdk-0.0.250425.dist-info}/METADATA +3 -3
  195. {criteo_api_retailmedia_sdk-0.0.250327.dist-info → criteo_api_retailmedia_sdk-0.0.250425.dist-info}/RECORD +197 -195
  196. {criteo_api_retailmedia_sdk-0.0.250327.dist-info → criteo_api_retailmedia_sdk-0.0.250425.dist-info}/WHEEL +1 -1
  197. criteo_api_retailmedia_preview/model/common_warning.py +0 -301
  198. criteo_api_retailmedia_preview/model/external_line_item_bid_multipliers_v2.py +0 -307
  199. criteo_api_retailmedia_preview/model/grant_consent_model.py +0 -279
  200. criteo_api_retailmedia_preview/model/json_api_body_with_id_of_int64_and_line_item_bid_multipliers_v2_and_line_item_bid_multipliers_v2.py +0 -279
  201. criteo_api_retailmedia_preview/model/json_api_request_of_seller_catalog_request_v2.py +0 -269
  202. criteo_api_retailmedia_preview/model/json_api_single_response_of_line_item_bid_multipliers_v2.py +0 -287
  203. criteo_api_retailmedia_preview/model/keywords.py +0 -297
  204. criteo_api_retailmedia_preview/model/resource_of_line_item_bid_multipliers_v2.py +0 -277
  205. {criteo_api_retailmedia_sdk-0.0.250327.dist-info → criteo_api_retailmedia_sdk-0.0.250425.dist-info}/top_level.txt +0 -0
@@ -87,12 +87,12 @@ class CreateBalanceV2(ModelNormal):
87
87
  """
88
88
  return {
89
89
  'name': (str,), # noqa: E501
90
- 'start_date': (date,), # noqa: E501
91
90
  'spend_type': (str,), # noqa: E501
92
- 'po_number': (str, none_type,), # noqa: E501
91
+ 'start_date': (date,), # noqa: E501
93
92
  'deposited': (float,), # noqa: E501
94
93
  'end_date': (date, none_type,), # noqa: E501
95
94
  'memo': (str, none_type,), # noqa: E501
95
+ 'po_number': (str, none_type,), # noqa: E501
96
96
  }
97
97
 
98
98
  @cached_property
@@ -102,12 +102,12 @@ class CreateBalanceV2(ModelNormal):
102
102
 
103
103
  attribute_map = {
104
104
  'name': 'name', # noqa: E501
105
- 'start_date': 'startDate', # noqa: E501
106
105
  'spend_type': 'spendType', # noqa: E501
107
- 'po_number': 'poNumber', # noqa: E501
106
+ 'start_date': 'startDate', # noqa: E501
108
107
  'deposited': 'deposited', # noqa: E501
109
108
  'end_date': 'endDate', # noqa: E501
110
109
  'memo': 'memo', # noqa: E501
110
+ 'po_number': 'poNumber', # noqa: E501
111
111
  }
112
112
 
113
113
  read_only_vars = {
@@ -117,13 +117,13 @@ class CreateBalanceV2(ModelNormal):
117
117
 
118
118
  @classmethod
119
119
  @convert_js_args_to_python_args
120
- def _from_openapi_data(cls, name, start_date, spend_type, *args, **kwargs): # noqa: E501
120
+ def _from_openapi_data(cls, name, spend_type, start_date, *args, **kwargs): # noqa: E501
121
121
  """CreateBalanceV2 - a model defined in OpenAPI
122
122
 
123
123
  Args:
124
124
  name (str): Name of the balance.
125
- start_date (date): Start date of the balance in the format YYYY-MM-DD.
126
125
  spend_type (str): Type of the balance spend.
126
+ start_date (date): Start date of the balance in the format YYYY-MM-DD.
127
127
 
128
128
  Keyword Args:
129
129
  _check_type (bool): if True, values for parameters in openapi_types
@@ -156,10 +156,10 @@ class CreateBalanceV2(ModelNormal):
156
156
  Animal class but this time we won't travel
157
157
  through its discriminator because we passed in
158
158
  _visited_composed_classes = (Animal,)
159
- po_number (str, none_type): Purchase Order number.. [optional] # noqa: E501
160
159
  deposited (float): Amount of billable funds allotted to the balance.. [optional] # noqa: E501
161
160
  end_date (date, none_type): End date of the balance in the format YYYY-MM-DD.. [optional] # noqa: E501
162
161
  memo (str, none_type): Memo. [optional] # noqa: E501
162
+ po_number (str, none_type): Purchase Order number.. [optional] # noqa: E501
163
163
  """
164
164
 
165
165
  _check_type = kwargs.pop('_check_type', True)
@@ -192,8 +192,8 @@ class CreateBalanceV2(ModelNormal):
192
192
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
193
193
 
194
194
  self.name = name
195
- self.start_date = start_date
196
195
  self.spend_type = spend_type
196
+ self.start_date = start_date
197
197
  for var_name, var_value in kwargs.items():
198
198
  if var_name not in self.attribute_map and \
199
199
  self._configuration is not None and \
@@ -214,13 +214,13 @@ class CreateBalanceV2(ModelNormal):
214
214
  ])
215
215
 
216
216
  @convert_js_args_to_python_args
217
- def __init__(self, name, start_date, spend_type, *args, **kwargs): # noqa: E501
217
+ def __init__(self, name, spend_type, start_date, *args, **kwargs): # noqa: E501
218
218
  """CreateBalanceV2 - a model defined in OpenAPI
219
219
 
220
220
  Args:
221
221
  name (str): Name of the balance.
222
- start_date (date): Start date of the balance in the format YYYY-MM-DD.
223
222
  spend_type (str): Type of the balance spend.
223
+ start_date (date): Start date of the balance in the format YYYY-MM-DD.
224
224
 
225
225
  Keyword Args:
226
226
  _check_type (bool): if True, values for parameters in openapi_types
@@ -253,10 +253,10 @@ class CreateBalanceV2(ModelNormal):
253
253
  Animal class but this time we won't travel
254
254
  through its discriminator because we passed in
255
255
  _visited_composed_classes = (Animal,)
256
- po_number (str, none_type): Purchase Order number.. [optional] # noqa: E501
257
256
  deposited (float): Amount of billable funds allotted to the balance.. [optional] # noqa: E501
258
257
  end_date (date, none_type): End date of the balance in the format YYYY-MM-DD.. [optional] # noqa: E501
259
258
  memo (str, none_type): Memo. [optional] # noqa: E501
259
+ po_number (str, none_type): Purchase Order number.. [optional] # noqa: E501
260
260
  """
261
261
 
262
262
  _check_type = kwargs.pop('_check_type', True)
@@ -287,8 +287,8 @@ class CreateBalanceV2(ModelNormal):
287
287
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
288
288
 
289
289
  self.name = name
290
- self.start_date = start_date
291
290
  self.spend_type = spend_type
291
+ self.start_date = start_date
292
292
  for var_name, var_value in kwargs.items():
293
293
  if var_name not in self.attribute_map and \
294
294
  self._configuration is not None and \
@@ -61,12 +61,6 @@ class Creative2(ModelNormal):
61
61
  """
62
62
 
63
63
  allowed_values = {
64
- ('status',): {
65
- 'READY': "Ready",
66
- 'INUSE': "InUse",
67
- 'ARCHIVED': "Archived",
68
- 'DELETED': "Deleted",
69
- },
70
64
  ('creative_format_v2_type',): {
71
65
  'UNKNOWN': "Unknown",
72
66
  'FLAGSHIP': "FlagShip",
@@ -79,6 +73,12 @@ class Creative2(ModelNormal):
79
73
  'DISPLAYPANEL': "DisplayPanel",
80
74
  'DIGITALSHELFTALKER': "DigitalShelfTalker",
81
75
  },
76
+ ('status',): {
77
+ 'READY': "Ready",
78
+ 'INUSE': "InUse",
79
+ 'ARCHIVED': "Archived",
80
+ 'DELETED': "Deleted",
81
+ },
82
82
  }
83
83
 
84
84
  validations = {
@@ -100,18 +100,18 @@ class Creative2(ModelNormal):
100
100
  """
101
101
  lazy_import()
102
102
  return {
103
- 'name': (str,), # noqa: E501
104
- 'status': (str,), # noqa: E501
103
+ 'associated_line_item_ids': ([str],), # noqa: E501
105
104
  'brand_id': (int,), # noqa: E501
105
+ 'creative_format_v2_type': (str,), # noqa: E501
106
+ 'environments': ([PageTypeEnvironment2],), # noqa: E501
107
+ 'format_id': (int,), # noqa: E501
108
+ 'name': (str,), # noqa: E501
106
109
  'retailer_id': (int,), # noqa: E501
110
+ 'status': (str,), # noqa: E501
107
111
  'template_id': (int,), # noqa: E501
108
112
  'template_name': (str,), # noqa: E501
109
- 'format_id': (int,), # noqa: E501
110
- 'associated_line_item_ids': ([str],), # noqa: E501
111
- 'updated_at': (datetime,), # noqa: E501
112
- 'creative_format_v2_type': (str,), # noqa: E501
113
- 'environments': ([PageTypeEnvironment2],), # noqa: E501
114
113
  'template_variable_values': ([TemplateVariableValue],), # noqa: E501
114
+ 'updated_at': (datetime,), # noqa: E501
115
115
  'id': (str, none_type,), # noqa: E501
116
116
  }
117
117
 
@@ -121,18 +121,18 @@ class Creative2(ModelNormal):
121
121
 
122
122
 
123
123
  attribute_map = {
124
- 'name': 'name', # noqa: E501
125
- 'status': 'status', # noqa: E501
124
+ 'associated_line_item_ids': 'associatedLineItemIds', # noqa: E501
126
125
  'brand_id': 'brandId', # noqa: E501
126
+ 'creative_format_v2_type': 'creativeFormatV2Type', # noqa: E501
127
+ 'environments': 'environments', # noqa: E501
128
+ 'format_id': 'formatId', # noqa: E501
129
+ 'name': 'name', # noqa: E501
127
130
  'retailer_id': 'retailerId', # noqa: E501
131
+ 'status': 'status', # noqa: E501
128
132
  'template_id': 'templateId', # noqa: E501
129
133
  'template_name': 'templateName', # noqa: E501
130
- 'format_id': 'formatId', # noqa: E501
131
- 'associated_line_item_ids': 'associatedLineItemIds', # noqa: E501
132
- 'updated_at': 'updatedAt', # noqa: E501
133
- 'creative_format_v2_type': 'creativeFormatV2Type', # noqa: E501
134
- 'environments': 'environments', # noqa: E501
135
134
  'template_variable_values': 'templateVariableValues', # noqa: E501
135
+ 'updated_at': 'updatedAt', # noqa: E501
136
136
  'id': 'id', # noqa: E501
137
137
  }
138
138
 
@@ -143,22 +143,22 @@ class Creative2(ModelNormal):
143
143
 
144
144
  @classmethod
145
145
  @convert_js_args_to_python_args
146
- def _from_openapi_data(cls, name, status, brand_id, retailer_id, template_id, template_name, format_id, associated_line_item_ids, updated_at, creative_format_v2_type, environments, template_variable_values, *args, **kwargs): # noqa: E501
146
+ def _from_openapi_data(cls, associated_line_item_ids, brand_id, creative_format_v2_type, environments, format_id, name, retailer_id, status, template_id, template_name, template_variable_values, updated_at, *args, **kwargs): # noqa: E501
147
147
  """Creative2 - a model defined in OpenAPI
148
148
 
149
149
  Args:
150
- name (str): Name
151
- status (str): Creative Status
150
+ associated_line_item_ids ([str]): Associated Line Item Ids
152
151
  brand_id (int): Brand Id
152
+ creative_format_v2_type (str): Creative format type
153
+ environments ([PageTypeEnvironment2]): Environment type (e.g. mobile, web, app)
154
+ format_id (int): Format Id
155
+ name (str): Name
153
156
  retailer_id (int): Retailer Id
157
+ status (str): Creative Status
154
158
  template_id (int): Template Id
155
159
  template_name (str): Template Name
156
- format_id (int): Format Id
157
- associated_line_item_ids ([str]): Associated Line Item Ids
158
- updated_at (datetime): Updated at time
159
- creative_format_v2_type (str): Creative format type
160
- environments ([PageTypeEnvironment2]): Environment type (e.g. mobile, web, app)
161
160
  template_variable_values ([TemplateVariableValue]): The template chosen values
161
+ updated_at (datetime): Updated at time
162
162
 
163
163
  Keyword Args:
164
164
  _check_type (bool): if True, values for parameters in openapi_types
@@ -223,18 +223,18 @@ class Creative2(ModelNormal):
223
223
  self._configuration = _configuration
224
224
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
225
225
 
226
- self.name = name
227
- self.status = status
226
+ self.associated_line_item_ids = associated_line_item_ids
228
227
  self.brand_id = brand_id
228
+ self.creative_format_v2_type = creative_format_v2_type
229
+ self.environments = environments
230
+ self.format_id = format_id
231
+ self.name = name
229
232
  self.retailer_id = retailer_id
233
+ self.status = status
230
234
  self.template_id = template_id
231
235
  self.template_name = template_name
232
- self.format_id = format_id
233
- self.associated_line_item_ids = associated_line_item_ids
234
- self.updated_at = updated_at
235
- self.creative_format_v2_type = creative_format_v2_type
236
- self.environments = environments
237
236
  self.template_variable_values = template_variable_values
237
+ self.updated_at = updated_at
238
238
  for var_name, var_value in kwargs.items():
239
239
  if var_name not in self.attribute_map and \
240
240
  self._configuration is not None and \
@@ -255,22 +255,22 @@ class Creative2(ModelNormal):
255
255
  ])
256
256
 
257
257
  @convert_js_args_to_python_args
258
- def __init__(self, name, status, brand_id, retailer_id, template_id, template_name, format_id, associated_line_item_ids, updated_at, creative_format_v2_type, environments, template_variable_values, *args, **kwargs): # noqa: E501
258
+ def __init__(self, associated_line_item_ids, brand_id, creative_format_v2_type, environments, format_id, name, retailer_id, status, template_id, template_name, template_variable_values, updated_at, *args, **kwargs): # noqa: E501
259
259
  """Creative2 - a model defined in OpenAPI
260
260
 
261
261
  Args:
262
- name (str): Name
263
- status (str): Creative Status
262
+ associated_line_item_ids ([str]): Associated Line Item Ids
264
263
  brand_id (int): Brand Id
264
+ creative_format_v2_type (str): Creative format type
265
+ environments ([PageTypeEnvironment2]): Environment type (e.g. mobile, web, app)
266
+ format_id (int): Format Id
267
+ name (str): Name
265
268
  retailer_id (int): Retailer Id
269
+ status (str): Creative Status
266
270
  template_id (int): Template Id
267
271
  template_name (str): Template Name
268
- format_id (int): Format Id
269
- associated_line_item_ids ([str]): Associated Line Item Ids
270
- updated_at (datetime): Updated at time
271
- creative_format_v2_type (str): Creative format type
272
- environments ([PageTypeEnvironment2]): Environment type (e.g. mobile, web, app)
273
272
  template_variable_values ([TemplateVariableValue]): The template chosen values
273
+ updated_at (datetime): Updated at time
274
274
 
275
275
  Keyword Args:
276
276
  _check_type (bool): if True, values for parameters in openapi_types
@@ -333,18 +333,18 @@ class Creative2(ModelNormal):
333
333
  self._configuration = _configuration
334
334
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
335
335
 
336
- self.name = name
337
- self.status = status
336
+ self.associated_line_item_ids = associated_line_item_ids
338
337
  self.brand_id = brand_id
338
+ self.creative_format_v2_type = creative_format_v2_type
339
+ self.environments = environments
340
+ self.format_id = format_id
341
+ self.name = name
339
342
  self.retailer_id = retailer_id
343
+ self.status = status
340
344
  self.template_id = template_id
341
345
  self.template_name = template_name
342
- self.format_id = format_id
343
- self.associated_line_item_ids = associated_line_item_ids
344
- self.updated_at = updated_at
345
- self.creative_format_v2_type = creative_format_v2_type
346
- self.environments = environments
347
346
  self.template_variable_values = template_variable_values
347
+ self.updated_at = updated_at
348
348
  for var_name, var_value in kwargs.items():
349
349
  if var_name not in self.attribute_map and \
350
350
  self._configuration is not None and \
@@ -83,8 +83,8 @@ class Creative2ListResponse(ModelNormal):
83
83
  lazy_import()
84
84
  return {
85
85
  'data': ([ResourceOfCreative2], none_type,), # noqa: E501
86
- 'warnings': ([CommonProblem], none_type,), # noqa: E501
87
86
  'errors': ([CommonProblem], none_type,), # noqa: E501
87
+ 'warnings': ([CommonProblem], none_type,), # noqa: E501
88
88
  }
89
89
 
90
90
  @cached_property
@@ -94,13 +94,13 @@ class Creative2ListResponse(ModelNormal):
94
94
 
95
95
  attribute_map = {
96
96
  'data': 'data', # noqa: E501
97
- 'warnings': 'warnings', # noqa: E501
98
97
  'errors': 'errors', # noqa: E501
98
+ 'warnings': 'warnings', # noqa: E501
99
99
  }
100
100
 
101
101
  read_only_vars = {
102
- 'warnings', # noqa: E501
103
102
  'errors', # noqa: E501
103
+ 'warnings', # noqa: E501
104
104
  }
105
105
 
106
106
  _composed_schemas = {}
@@ -142,8 +142,8 @@ class Creative2ListResponse(ModelNormal):
142
142
  through its discriminator because we passed in
143
143
  _visited_composed_classes = (Animal,)
144
144
  data ([ResourceOfCreative2], none_type): [optional] # noqa: E501
145
- warnings ([CommonProblem], none_type): [optional] # noqa: E501
146
145
  errors ([CommonProblem], none_type): [optional] # noqa: E501
146
+ warnings ([CommonProblem], none_type): [optional] # noqa: E501
147
147
  """
148
148
 
149
149
  _check_type = kwargs.pop('_check_type', True)
@@ -230,8 +230,8 @@ class Creative2ListResponse(ModelNormal):
230
230
  through its discriminator because we passed in
231
231
  _visited_composed_classes = (Animal,)
232
232
  data ([ResourceOfCreative2], none_type): [optional] # noqa: E501
233
- warnings ([CommonProblem], none_type): [optional] # noqa: E501
234
233
  errors ([CommonProblem], none_type): [optional] # noqa: E501
234
+ warnings ([CommonProblem], none_type): [optional] # noqa: E501
235
235
  """
236
236
 
237
237
  _check_type = kwargs.pop('_check_type', True)
@@ -83,8 +83,8 @@ class Creative2Response(ModelNormal):
83
83
  lazy_import()
84
84
  return {
85
85
  'data': (ResourceOfCreative2,), # noqa: E501
86
- 'warnings': ([CommonProblem], none_type,), # noqa: E501
87
86
  'errors': ([CommonProblem], none_type,), # noqa: E501
87
+ 'warnings': ([CommonProblem], none_type,), # noqa: E501
88
88
  }
89
89
 
90
90
  @cached_property
@@ -94,13 +94,13 @@ class Creative2Response(ModelNormal):
94
94
 
95
95
  attribute_map = {
96
96
  'data': 'data', # noqa: E501
97
- 'warnings': 'warnings', # noqa: E501
98
97
  'errors': 'errors', # noqa: E501
98
+ 'warnings': 'warnings', # noqa: E501
99
99
  }
100
100
 
101
101
  read_only_vars = {
102
- 'warnings', # noqa: E501
103
102
  'errors', # noqa: E501
103
+ 'warnings', # noqa: E501
104
104
  }
105
105
 
106
106
  _composed_schemas = {}
@@ -142,8 +142,8 @@ class Creative2Response(ModelNormal):
142
142
  through its discriminator because we passed in
143
143
  _visited_composed_classes = (Animal,)
144
144
  data (ResourceOfCreative2): [optional] # noqa: E501
145
- warnings ([CommonProblem], none_type): [optional] # noqa: E501
146
145
  errors ([CommonProblem], none_type): [optional] # noqa: E501
146
+ warnings ([CommonProblem], none_type): [optional] # noqa: E501
147
147
  """
148
148
 
149
149
  _check_type = kwargs.pop('_check_type', True)
@@ -230,8 +230,8 @@ class Creative2Response(ModelNormal):
230
230
  through its discriminator because we passed in
231
231
  _visited_composed_classes = (Animal,)
232
232
  data (ResourceOfCreative2): [optional] # noqa: E501
233
- warnings ([CommonProblem], none_type): [optional] # noqa: E501
234
233
  errors ([CommonProblem], none_type): [optional] # noqa: E501
234
+ warnings ([CommonProblem], none_type): [optional] # noqa: E501
235
235
  """
236
236
 
237
237
  _check_type = kwargs.pop('_check_type', True)
@@ -0,0 +1,267 @@
1
+ """
2
+ Criteo API
3
+
4
+ Criteo API - RetailMedia # noqa: E501
5
+
6
+ The version of the OpenAPI document: Preview
7
+ Generated by: https://openapi-generator.tech
8
+ """
9
+
10
+
11
+ import re # noqa: F401
12
+ import sys # noqa: F401
13
+
14
+ from criteo_api_retailmedia_preview.model_utils import ( # noqa: F401
15
+ ApiTypeError,
16
+ ModelComposed,
17
+ ModelNormal,
18
+ ModelSimple,
19
+ cached_property,
20
+ change_keys_js_to_python,
21
+ convert_js_args_to_python_args,
22
+ date,
23
+ datetime,
24
+ file_type,
25
+ none_type,
26
+ validate_get_composed_info,
27
+ OpenApiModel
28
+ )
29
+ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
+
31
+
32
+
33
+ class DemandManagedFee(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
+ }
59
+
60
+ validations = {
61
+ ('rate',): {
62
+ 'inclusive_maximum': 1,
63
+ 'inclusive_minimum': 0,
64
+ },
65
+ }
66
+
67
+ additional_properties_type = None
68
+
69
+ _nullable = False
70
+
71
+ @cached_property
72
+ def openapi_types():
73
+ """
74
+ This must be a method because a model may have properties that are
75
+ of type self, this must run after the class is loaded
76
+
77
+ Returns
78
+ openapi_types (dict): The key is attribute name
79
+ and the value is attribute type.
80
+ """
81
+ return {
82
+ 'rate': (float,), # noqa: E501
83
+ }
84
+
85
+ @cached_property
86
+ def discriminator():
87
+ return None
88
+
89
+
90
+ attribute_map = {
91
+ 'rate': 'rate', # noqa: E501
92
+ }
93
+
94
+ read_only_vars = {
95
+ }
96
+
97
+ _composed_schemas = {}
98
+
99
+ @classmethod
100
+ @convert_js_args_to_python_args
101
+ def _from_openapi_data(cls, rate, *args, **kwargs): # noqa: E501
102
+ """DemandManagedFee - a model defined in OpenAPI
103
+
104
+ Args:
105
+ rate (float): decimal fee rate between 0 and 1
106
+
107
+ Keyword Args:
108
+ _check_type (bool): if True, values for parameters in openapi_types
109
+ will be type checked and a TypeError will be
110
+ raised if the wrong type is input.
111
+ Defaults to True
112
+ _path_to_item (tuple/list): This is a list of keys or values to
113
+ drill down to the model in received_data
114
+ when deserializing a response
115
+ _spec_property_naming (bool): True if the variable names in the input data
116
+ are serialized names, as specified in the OpenAPI document.
117
+ False if the variable names in the input data
118
+ are pythonic names, e.g. snake case (default)
119
+ _configuration (Configuration): the instance to use when
120
+ deserializing a file_type parameter.
121
+ If passed, type conversion is attempted
122
+ If omitted no type conversion is done.
123
+ _visited_composed_classes (tuple): This stores a tuple of
124
+ classes that we have traveled through so that
125
+ if we see that class again we will not use its
126
+ discriminator again.
127
+ When traveling through a discriminator, the
128
+ composed schema that is
129
+ is traveled through is added to this set.
130
+ For example if Animal has a discriminator
131
+ petType and we pass in "Dog", and the class Dog
132
+ allOf includes Animal, we move through Animal
133
+ once using the discriminator, and pick Dog.
134
+ Then in Dog, we will make an instance of the
135
+ Animal class but this time we won't travel
136
+ through its discriminator because we passed in
137
+ _visited_composed_classes = (Animal,)
138
+ """
139
+
140
+ _check_type = kwargs.pop('_check_type', True)
141
+ _spec_property_naming = kwargs.pop('_spec_property_naming', True)
142
+ _path_to_item = kwargs.pop('_path_to_item', ())
143
+ _configuration = kwargs.pop('_configuration', None)
144
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
145
+
146
+ self = super(OpenApiModel, cls).__new__(cls)
147
+
148
+ if args:
149
+ for arg in args:
150
+ if isinstance(arg, dict):
151
+ kwargs.update(arg)
152
+ else:
153
+ raise ApiTypeError(
154
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
155
+ args,
156
+ self.__class__.__name__,
157
+ ),
158
+ path_to_item=_path_to_item,
159
+ valid_classes=(self.__class__,),
160
+ )
161
+
162
+ self._data_store = {}
163
+ self._check_type = _check_type
164
+ self._spec_property_naming = _spec_property_naming
165
+ self._path_to_item = _path_to_item
166
+ self._configuration = _configuration
167
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
168
+
169
+ self.rate = rate
170
+ for var_name, var_value in kwargs.items():
171
+ if var_name not in self.attribute_map and \
172
+ self._configuration is not None and \
173
+ self._configuration.discard_unknown_keys and \
174
+ self.additional_properties_type is None:
175
+ # discard variable.
176
+ continue
177
+ setattr(self, var_name, var_value)
178
+ return self
179
+
180
+ required_properties = set([
181
+ '_data_store',
182
+ '_check_type',
183
+ '_spec_property_naming',
184
+ '_path_to_item',
185
+ '_configuration',
186
+ '_visited_composed_classes',
187
+ ])
188
+
189
+ @convert_js_args_to_python_args
190
+ def __init__(self, rate, *args, **kwargs): # noqa: E501
191
+ """DemandManagedFee - a model defined in OpenAPI
192
+
193
+ Args:
194
+ rate (float): decimal fee rate between 0 and 1
195
+
196
+ Keyword Args:
197
+ _check_type (bool): if True, values for parameters in openapi_types
198
+ will be type checked and a TypeError will be
199
+ raised if the wrong type is input.
200
+ Defaults to True
201
+ _path_to_item (tuple/list): This is a list of keys or values to
202
+ drill down to the model in received_data
203
+ when deserializing a response
204
+ _spec_property_naming (bool): True if the variable names in the input data
205
+ are serialized names, as specified in the OpenAPI document.
206
+ False if the variable names in the input data
207
+ are pythonic names, e.g. snake case (default)
208
+ _configuration (Configuration): the instance to use when
209
+ deserializing a file_type parameter.
210
+ If passed, type conversion is attempted
211
+ If omitted no type conversion is done.
212
+ _visited_composed_classes (tuple): This stores a tuple of
213
+ classes that we have traveled through so that
214
+ if we see that class again we will not use its
215
+ discriminator again.
216
+ When traveling through a discriminator, the
217
+ composed schema that is
218
+ is traveled through is added to this set.
219
+ For example if Animal has a discriminator
220
+ petType and we pass in "Dog", and the class Dog
221
+ allOf includes Animal, we move through Animal
222
+ once using the discriminator, and pick Dog.
223
+ Then in Dog, we will make an instance of the
224
+ Animal class but this time we won't travel
225
+ through its discriminator because we passed in
226
+ _visited_composed_classes = (Animal,)
227
+ """
228
+
229
+ _check_type = kwargs.pop('_check_type', True)
230
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
231
+ _path_to_item = kwargs.pop('_path_to_item', ())
232
+ _configuration = kwargs.pop('_configuration', None)
233
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
234
+
235
+ if args:
236
+ for arg in args:
237
+ if isinstance(arg, dict):
238
+ kwargs.update(arg)
239
+ else:
240
+ raise ApiTypeError(
241
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
242
+ args,
243
+ self.__class__.__name__,
244
+ ),
245
+ path_to_item=_path_to_item,
246
+ valid_classes=(self.__class__,),
247
+ )
248
+
249
+ self._data_store = {}
250
+ self._check_type = _check_type
251
+ self._spec_property_naming = _spec_property_naming
252
+ self._path_to_item = _path_to_item
253
+ self._configuration = _configuration
254
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
255
+
256
+ self.rate = rate
257
+ for var_name, var_value in kwargs.items():
258
+ if var_name not in self.attribute_map and \
259
+ self._configuration is not None and \
260
+ self._configuration.discard_unknown_keys and \
261
+ self.additional_properties_type is None:
262
+ # discard variable.
263
+ continue
264
+ setattr(self, var_name, var_value)
265
+ if var_name in self.read_only_vars:
266
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
267
+ f"class with read only attributes.")