criteo-api-retailmedia-sdk 0.0.240207__py3-none-any.whl → 0.0.240515__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.
- criteo_api_retailmedia_preview/__init__.py +1 -1
- criteo_api_retailmedia_preview/api/accounts_api.py +181 -35
- criteo_api_retailmedia_preview/api/analytics_api.py +142 -0
- criteo_api_retailmedia_preview/api/audience_api.py +284 -0
- criteo_api_retailmedia_preview/api/campaign_api.py +1678 -902
- criteo_api_retailmedia_preview/api/catalog_api.py +312 -0
- criteo_api_retailmedia_preview/api_client.py +4 -4
- criteo_api_retailmedia_preview/apis/__init__.py +1 -0
- criteo_api_retailmedia_preview/configuration.py +1 -1
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_add_remove_keyword_model.py → add_remove_keyword_model.py} +12 -19
- criteo_api_retailmedia_preview/model/add_remove_keywords_model.py +262 -0
- criteo_api_retailmedia_preview/model/add_remove_keywords_model_request.py +262 -0
- criteo_api_retailmedia_preview/model/add_remove_keywords_model_resource.py +270 -0
- criteo_api_retailmedia_preview/model/approval_status_model.py +292 -0
- criteo_api_retailmedia_preview/model/async_accounts_report.py +421 -0
- criteo_api_retailmedia_preview/model/{external_catalog_request_preview.py → async_accounts_report_request.py} +13 -10
- criteo_api_retailmedia_preview/model/async_accounts_report_resource.py +273 -0
- criteo_api_retailmedia_preview/model/async_campaigns_report.py +74 -59
- criteo_api_retailmedia_preview/model/async_line_items_report.py +74 -60
- criteo_api_retailmedia_preview/model/audience_error.py +310 -0
- criteo_api_retailmedia_preview/model/{template_variable.py → audience_warning.py} +48 -46
- criteo_api_retailmedia_preview/model/{hyperlink_variable_value.py → batch_accepted_response.py} +11 -11
- criteo_api_retailmedia_preview/model/change_details.py +275 -0
- criteo_api_retailmedia_preview/model/{creative202210_list_response.py → creative_v2_list_response.py} +16 -16
- criteo_api_retailmedia_preview/model/{value_resource_collection_outcome_of_int64.py → creative_v2_response.py} +16 -9
- criteo_api_retailmedia_preview/model/custom_attribute.py +275 -0
- criteo_api_retailmedia_preview/model/error_code_response.py +281 -0
- criteo_api_retailmedia_preview/model/export_report_column.py +2 -2
- criteo_api_retailmedia_preview/model/{choice_variable_value.py → external_choice_variable_value.py} +3 -3
- criteo_api_retailmedia_preview/model/{color_variable_value.py → external_color_variable_value.py} +8 -14
- criteo_api_retailmedia_preview/model/{creative_update_model202207.py → external_creative_create_model_v2.py} +11 -11
- criteo_api_retailmedia_preview/model/{creative_create_model202207.py → external_creative_update_model_v2.py} +11 -11
- criteo_api_retailmedia_preview/model/{creative202210.py → external_creative_v2.py} +34 -28
- criteo_api_retailmedia_preview/model/{files_variable_value.py → external_files_variable_value.py} +4 -3
- criteo_api_retailmedia_preview/model/{text_variable_specification.py → external_hyperlink_variable_value.py} +7 -7
- criteo_api_retailmedia_preview/model/{line_item_bid_multipliers.py → external_line_item_bid_multipliers_v2.py} +41 -29
- criteo_api_retailmedia_preview/model/external_line_item_capping_v2.py +280 -0
- criteo_api_retailmedia_preview/model/external_line_item_page_category_v2.py +273 -0
- criteo_api_retailmedia_preview/model/{choice_variable_specification.py → external_line_item_page_v2.py} +36 -21
- criteo_api_retailmedia_preview/model/{page_type_environment.py → external_page_type_environment.py} +15 -9
- criteo_api_retailmedia_preview/model/external_preferred_line_item_create_model_v2.py +345 -0
- criteo_api_retailmedia_preview/model/{external_catalog_status.py → external_preferred_line_item_update_model_v2.py} +70 -47
- criteo_api_retailmedia_preview/model/{template.py → external_preferred_line_item_v2.py} +93 -70
- criteo_api_retailmedia_preview/model/{template_variable_value.py → external_template_variable_value.py} +36 -30
- criteo_api_retailmedia_preview/model/{text_variable_value.py → external_text_variable_value.py} +8 -14
- criteo_api_retailmedia_preview/model/external_video_variable_value.py +293 -0
- criteo_api_retailmedia_preview/model/{choice_option.py → fail_response.py} +21 -19
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_input_keywords_model.py → input_keywords_model.py} +4 -16
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_add_remove_keywords_model.py → input_resource_of_preferred_line_item_create_model_v2.py} +13 -11
- criteo_api_retailmedia_preview/model/insertion_order_history_change_data_capture.py +303 -0
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_set_bids_model.py → installment.py} +13 -11
- criteo_api_retailmedia_preview/model/{json_api_body_with_id_of_int64_and_line_item_bid_multipliers_and_line_item_bid_multipliers.py → json_api_body_with_id_of_int64_and_line_item_bid_multipliers_v2_and_line_item_bid_multipliers_v2.py} +8 -8
- criteo_api_retailmedia_preview/model/{json_api_single_response_of_line_item_bid_multipliers.py → json_api_single_response_of_line_item_bid_multipliers_v2.py} +14 -14
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_keyword_data_model.py → keyword_data_model.py} +19 -37
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_keywords_model.py → keywords_model.py} +9 -18
- criteo_api_retailmedia_preview/model/keywords_model_resource.py +270 -0
- criteo_api_retailmedia_preview/model/keywords_model_response.py +274 -0
- criteo_api_retailmedia_preview/model/{line_item_bid_multipliers_request.py → line_item_bid_multipliers_v2_request.py} +8 -8
- criteo_api_retailmedia_preview/model/{line_item_bid_multipliers_response.py → line_item_bid_multipliers_v2_response.py} +16 -16
- criteo_api_retailmedia_preview/model/line_item_product_status.py +291 -0
- criteo_api_retailmedia_preview/model/loyalty_points.py +271 -0
- criteo_api_retailmedia_preview/model/match_type_model.py +291 -0
- criteo_api_retailmedia_preview/model/metadata.py +273 -0
- criteo_api_retailmedia_preview/model/negotiation_state_model.py +293 -0
- criteo_api_retailmedia_preview/model/page_of_insertion_order_history_change_data_capture.py +276 -0
- criteo_api_retailmedia_preview/model/{json_api_request_of_catalog_request_preview.py → preferred_line_item_create_model_v2_request.py} +8 -8
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_set_bids_model_request.py → preferred_line_item_update_model_v2_request.py} +8 -8
- criteo_api_retailmedia_preview/model/{creative202210_response.py → preferred_line_item_v2_paged_list_response.py} +22 -16
- criteo_api_retailmedia_preview/model/{template_response.py → preferred_line_item_v2_response.py} +16 -16
- criteo_api_retailmedia_preview/model/price.py +267 -0
- criteo_api_retailmedia_preview/model/product.py +626 -0
- criteo_api_retailmedia_preview/model/product_importer_error.py +299 -0
- criteo_api_retailmedia_preview/model/product_importer_warning.py +299 -0
- criteo_api_retailmedia_preview/model/product_metadata.py +269 -0
- criteo_api_retailmedia_preview/model/product_resource_outcome.py +266 -0
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_keywords_model_response.py → product_shipping.py} +33 -25
- criteo_api_retailmedia_preview/model/product_shipping_dimension.py +267 -0
- criteo_api_retailmedia_preview/model/product_shipping_weight.py +267 -0
- criteo_api_retailmedia_preview/model/product_tax.py +283 -0
- criteo_api_retailmedia_preview/model/product_unit_pricing_base_measure.py +267 -0
- criteo_api_retailmedia_preview/model/product_unit_pricing_measure.py +267 -0
- criteo_api_retailmedia_preview/model/{section.py → products_custom_batch_request.py} +13 -19
- criteo_api_retailmedia_preview/model/products_custom_batch_request_entry.py +305 -0
- criteo_api_retailmedia_preview/model/promoted_product.py +270 -0
- criteo_api_retailmedia_preview/model/promoted_product_resource.py +270 -0
- criteo_api_retailmedia_preview/model/promoted_product_resource_collection_input.py +262 -0
- criteo_api_retailmedia_preview/model/promoted_product_resource_collection_outcome.py +278 -0
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_proposal_status_model.py → proposal_status_model.py} +22 -50
- criteo_api_retailmedia_preview/model/proposal_status_model_resource.py +270 -0
- criteo_api_retailmedia_preview/model/{template_list_response.py → proposal_status_model_response.py} +20 -27
- criteo_api_retailmedia_preview/model/report_detail_error.py +299 -0
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_add_remove_keywords_model_request.py → report_detail_errors.py} +23 -11
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_keywords_model_resource.py → report_ok_response.py} +56 -21
- criteo_api_retailmedia_preview/model/{resource_of_creative202210.py → resource_of_creative_v2.py} +8 -8
- criteo_api_retailmedia_preview/model/{resource_of_template.py → resource_of_line_item_bid_multipliers_v2.py} +8 -8
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_add_remove_keywords_model_resource.py → resource_of_preferred_line_item_update_model_v2.py} +16 -22
- criteo_api_retailmedia_preview/model/{resource_of_line_item_bid_multipliers.py → resource_of_preferred_line_item_v2.py} +9 -9
- criteo_api_retailmedia_preview/model/resource_outcome.py +268 -0
- criteo_api_retailmedia_preview/model/retail_media_account.py +6 -6
- criteo_api_retailmedia_preview/model/retail_media_brands.py +257 -0
- criteo_api_retailmedia_preview/model/{json_api_body_without_id_of_catalog_request_and_catalog_request_preview.py → retail_media_contactlist_amendment.py} +16 -16
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_set_bids_model_resource.py → retail_media_contactlist_amendment_attributes.py} +34 -25
- criteo_api_retailmedia_preview/model/retail_media_contactlist_amendment_request.py +275 -0
- criteo_api_retailmedia_preview/model/{json_api_single_response_of_catalog_status.py → retail_media_contactlist_operation.py} +24 -20
- criteo_api_retailmedia_preview/model/{json_api_body_with_id_of_int64_and_catalog_status_and_catalog_status.py → retail_media_contactlist_operation_response_attributes.py} +14 -18
- criteo_api_retailmedia_preview/model/retail_media_contactlist_operation_response_attributes_attributes.py +297 -0
- criteo_api_retailmedia_preview/model/review_state_model.py +294 -0
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_problem_details.py → rmca_common_problem.py} +41 -30
- criteo_api_retailmedia_preview/model/{retail_media_externalv1_set_bid_model.py → set_bid_model.py} +4 -10
- criteo_api_retailmedia_preview/model/set_bids_model.py +262 -0
- criteo_api_retailmedia_preview/model/set_bids_model_request.py +262 -0
- criteo_api_retailmedia_preview/model/set_bids_model_resource.py +270 -0
- criteo_api_retailmedia_preview/model/sync_attributed_transactions_report.py +47 -45
- criteo_api_retailmedia_preview/model/sync_campaigns_report.py +68 -53
- criteo_api_retailmedia_preview/model/sync_line_items_report.py +70 -56
- criteo_api_retailmedia_preview/model/value_resource_collection_input_of_retail_media_seller.py +262 -0
- criteo_api_retailmedia_preview/model/value_resource_input_of_retail_media_brand_account_creation.py +262 -0
- criteo_api_retailmedia_preview/model/value_resource_input_of_retail_media_brands.py +262 -0
- criteo_api_retailmedia_preview/model/value_resource_input_of_retail_media_seller_account_creation.py +262 -0
- criteo_api_retailmedia_preview/model/value_resource_of_retail_media_brand_account_creation.py +266 -0
- criteo_api_retailmedia_preview/model/{value_resource_of_int64.py → value_resource_of_retail_media_brands.py} +11 -6
- criteo_api_retailmedia_preview/model/value_resource_of_retail_media_seller_account_creation.py +266 -0
- criteo_api_retailmedia_preview/models/__init__.py +106 -55
- {criteo_api_retailmedia_sdk-0.0.240207.dist-info → criteo_api_retailmedia_sdk-0.0.240515.dist-info}/METADATA +3 -3
- {criteo_api_retailmedia_sdk-0.0.240207.dist-info → criteo_api_retailmedia_sdk-0.0.240515.dist-info}/RECORD +127 -75
- {criteo_api_retailmedia_sdk-0.0.240207.dist-info → criteo_api_retailmedia_sdk-0.0.240515.dist-info}/WHEEL +1 -1
- criteo_api_retailmedia_preview/model/files_variables_specification.py +0 -290
- criteo_api_retailmedia_preview/model/retail_media_externalv1_proposal_status_model_resource.py +0 -283
- criteo_api_retailmedia_preview/model/retail_media_externalv1_proposal_status_model_response.py +0 -285
- criteo_api_retailmedia_preview/model/retail_media_externalv1_resource_outcome.py +0 -279
- {criteo_api_retailmedia_sdk-0.0.240207.dist-info → criteo_api_retailmedia_sdk-0.0.240515.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,626 @@
|
|
|
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
|
+
def lazy_import():
|
|
33
|
+
from criteo_api_retailmedia_preview.model.custom_attribute import CustomAttribute
|
|
34
|
+
from criteo_api_retailmedia_preview.model.installment import Installment
|
|
35
|
+
from criteo_api_retailmedia_preview.model.loyalty_points import LoyaltyPoints
|
|
36
|
+
from criteo_api_retailmedia_preview.model.price import Price
|
|
37
|
+
from criteo_api_retailmedia_preview.model.product_shipping import ProductShipping
|
|
38
|
+
from criteo_api_retailmedia_preview.model.product_shipping_dimension import ProductShippingDimension
|
|
39
|
+
from criteo_api_retailmedia_preview.model.product_shipping_weight import ProductShippingWeight
|
|
40
|
+
from criteo_api_retailmedia_preview.model.product_tax import ProductTax
|
|
41
|
+
from criteo_api_retailmedia_preview.model.product_unit_pricing_base_measure import ProductUnitPricingBaseMeasure
|
|
42
|
+
from criteo_api_retailmedia_preview.model.product_unit_pricing_measure import ProductUnitPricingMeasure
|
|
43
|
+
globals()['CustomAttribute'] = CustomAttribute
|
|
44
|
+
globals()['Installment'] = Installment
|
|
45
|
+
globals()['LoyaltyPoints'] = LoyaltyPoints
|
|
46
|
+
globals()['Price'] = Price
|
|
47
|
+
globals()['ProductShipping'] = ProductShipping
|
|
48
|
+
globals()['ProductShippingDimension'] = ProductShippingDimension
|
|
49
|
+
globals()['ProductShippingWeight'] = ProductShippingWeight
|
|
50
|
+
globals()['ProductTax'] = ProductTax
|
|
51
|
+
globals()['ProductUnitPricingBaseMeasure'] = ProductUnitPricingBaseMeasure
|
|
52
|
+
globals()['ProductUnitPricingMeasure'] = ProductUnitPricingMeasure
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
class Product(ModelNormal):
|
|
56
|
+
"""NOTE: This class is auto generated by OpenAPI Generator.
|
|
57
|
+
Ref: https://openapi-generator.tech
|
|
58
|
+
|
|
59
|
+
Do not edit the class manually.
|
|
60
|
+
|
|
61
|
+
Attributes:
|
|
62
|
+
allowed_values (dict): The key is the tuple path to the attribute
|
|
63
|
+
and the for var_name this is (var_name,). The value is a dict
|
|
64
|
+
with a capitalized key describing the allowed value and an allowed
|
|
65
|
+
value. These dicts store the allowed enum values.
|
|
66
|
+
attribute_map (dict): The key is attribute name
|
|
67
|
+
and the value is json key in definition.
|
|
68
|
+
discriminator_value_class_map (dict): A dict to go from the discriminator
|
|
69
|
+
variable value to the discriminator class name.
|
|
70
|
+
validations (dict): The key is the tuple path to the attribute
|
|
71
|
+
and the for var_name this is (var_name,). The value is a dict
|
|
72
|
+
that stores validations for max_length, min_length, max_items,
|
|
73
|
+
min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
|
|
74
|
+
inclusive_minimum, and regex.
|
|
75
|
+
additional_properties_type (tuple): A tuple of classes accepted
|
|
76
|
+
as additional properties values.
|
|
77
|
+
"""
|
|
78
|
+
|
|
79
|
+
allowed_values = {
|
|
80
|
+
('channel',): {
|
|
81
|
+
'ONLINE': "online",
|
|
82
|
+
},
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
validations = {
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
@cached_property
|
|
89
|
+
def additional_properties_type():
|
|
90
|
+
"""
|
|
91
|
+
This must be a method because a model may have properties that are
|
|
92
|
+
of type self, this must run after the class is loaded
|
|
93
|
+
"""
|
|
94
|
+
lazy_import()
|
|
95
|
+
return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
|
|
96
|
+
|
|
97
|
+
_nullable = False
|
|
98
|
+
|
|
99
|
+
@cached_property
|
|
100
|
+
def openapi_types():
|
|
101
|
+
"""
|
|
102
|
+
This must be a method because a model may have properties that are
|
|
103
|
+
of type self, this must run after the class is loaded
|
|
104
|
+
|
|
105
|
+
Returns
|
|
106
|
+
openapi_types (dict): The key is attribute name
|
|
107
|
+
and the value is attribute type.
|
|
108
|
+
"""
|
|
109
|
+
lazy_import()
|
|
110
|
+
return {
|
|
111
|
+
'id': (str,), # noqa: E501
|
|
112
|
+
'title': (str,), # noqa: E501
|
|
113
|
+
'link': (str,), # noqa: E501
|
|
114
|
+
'image_link': (str,), # noqa: E501
|
|
115
|
+
'channel': (str,), # noqa: E501
|
|
116
|
+
'offer_id': (str, none_type,), # noqa: E501
|
|
117
|
+
'description': (str, none_type,), # noqa: E501
|
|
118
|
+
'additional_image_links': ([str], none_type,), # noqa: E501
|
|
119
|
+
'content_language': (str, none_type,), # noqa: E501
|
|
120
|
+
'target_country': (str, none_type,), # noqa: E501
|
|
121
|
+
'expiration_date': (str, none_type,), # noqa: E501
|
|
122
|
+
'adult': (bool, none_type,), # noqa: E501
|
|
123
|
+
'kind': (str, none_type,), # noqa: E501
|
|
124
|
+
'brand': (str, none_type,), # noqa: E501
|
|
125
|
+
'color': (str, none_type,), # noqa: E501
|
|
126
|
+
'google_product_category': (str, none_type,), # noqa: E501
|
|
127
|
+
'gtin': (str, none_type,), # noqa: E501
|
|
128
|
+
'item_group_id': (str, none_type,), # noqa: E501
|
|
129
|
+
'material': (str, none_type,), # noqa: E501
|
|
130
|
+
'mpn': (str, none_type,), # noqa: E501
|
|
131
|
+
'pattern': (str, none_type,), # noqa: E501
|
|
132
|
+
'price': (Price,), # noqa: E501
|
|
133
|
+
'sale_price': (Price,), # noqa: E501
|
|
134
|
+
'sale_price_effective_date': (str, none_type,), # noqa: E501
|
|
135
|
+
'shipping': ([ProductShipping], none_type,), # noqa: E501
|
|
136
|
+
'shipping_weight': (ProductShippingWeight,), # noqa: E501
|
|
137
|
+
'sizes': ([str], none_type,), # noqa: E501
|
|
138
|
+
'taxes': ([ProductTax], none_type,), # noqa: E501
|
|
139
|
+
'custom_attributes': ([CustomAttribute], none_type,), # noqa: E501
|
|
140
|
+
'identifier_exists': (bool, none_type,), # noqa: E501
|
|
141
|
+
'installment': (Installment,), # noqa: E501
|
|
142
|
+
'loyalty_points': (LoyaltyPoints,), # noqa: E501
|
|
143
|
+
'multipack': (int, none_type,), # noqa: E501
|
|
144
|
+
'custom_label0': (str, none_type,), # noqa: E501
|
|
145
|
+
'custom_label1': (str, none_type,), # noqa: E501
|
|
146
|
+
'custom_label2': (str, none_type,), # noqa: E501
|
|
147
|
+
'custom_label3': (str, none_type,), # noqa: E501
|
|
148
|
+
'custom_label4': (str, none_type,), # noqa: E501
|
|
149
|
+
'is_bundle': (bool, none_type,), # noqa: E501
|
|
150
|
+
'mobile_link': (str, none_type,), # noqa: E501
|
|
151
|
+
'availability_date': (str, none_type,), # noqa: E501
|
|
152
|
+
'shipping_label': (str, none_type,), # noqa: E501
|
|
153
|
+
'unit_pricing_measure': (ProductUnitPricingMeasure,), # noqa: E501
|
|
154
|
+
'unit_pricing_base_measure': (ProductUnitPricingBaseMeasure,), # noqa: E501
|
|
155
|
+
'shipping_length': (ProductShippingDimension,), # noqa: E501
|
|
156
|
+
'shipping_width': (ProductShippingDimension,), # noqa: E501
|
|
157
|
+
'shipping_height': (ProductShippingDimension,), # noqa: E501
|
|
158
|
+
'display_ads_id': (str, none_type,), # noqa: E501
|
|
159
|
+
'display_ads_similar_ids': ([str], none_type,), # noqa: E501
|
|
160
|
+
'display_ads_title': (str, none_type,), # noqa: E501
|
|
161
|
+
'display_ads_link': (str, none_type,), # noqa: E501
|
|
162
|
+
'display_ads_value': (float, none_type,), # noqa: E501
|
|
163
|
+
'sell_on_google_quantity': (int, none_type,), # noqa: E501
|
|
164
|
+
'promotion_ids': ([str], none_type,), # noqa: E501
|
|
165
|
+
'max_handling_time': (int, none_type,), # noqa: E501
|
|
166
|
+
'min_handling_time': (int, none_type,), # noqa: E501
|
|
167
|
+
'cost_of_goods_sold': (Price,), # noqa: E501
|
|
168
|
+
'source': (str, none_type,), # noqa: E501
|
|
169
|
+
'included_destinations': ([str], none_type,), # noqa: E501
|
|
170
|
+
'excluded_destinations': ([str], none_type,), # noqa: E501
|
|
171
|
+
'ads_grouping': (str, none_type,), # noqa: E501
|
|
172
|
+
'ads_labels': ([str], none_type,), # noqa: E501
|
|
173
|
+
'ads_redirect': (str, none_type,), # noqa: E501
|
|
174
|
+
'product_types': ([str], none_type,), # noqa: E501
|
|
175
|
+
'product_type_keys': ([str], none_type,), # noqa: E501
|
|
176
|
+
'age_group': (str, none_type,), # noqa: E501
|
|
177
|
+
'availability': (str, none_type,), # noqa: E501
|
|
178
|
+
'condition': (str, none_type,), # noqa: E501
|
|
179
|
+
'gender': (str, none_type,), # noqa: E501
|
|
180
|
+
'size_system': (str, none_type,), # noqa: E501
|
|
181
|
+
'size_type': (str, none_type,), # noqa: E501
|
|
182
|
+
'energy_efficiency_class': (str, none_type,), # noqa: E501
|
|
183
|
+
'min_energy_efficiency_class': (str, none_type,), # noqa: E501
|
|
184
|
+
'max_energy_efficiency_class': (str, none_type,), # noqa: E501
|
|
185
|
+
'tax_category': (str, none_type,), # noqa: E501
|
|
186
|
+
'transit_time_label': (str, none_type,), # noqa: E501
|
|
187
|
+
'seller_id': (str, none_type,), # noqa: E501
|
|
188
|
+
'external_seller_id': (str, none_type,), # noqa: E501
|
|
189
|
+
'external_seller_name': (str, none_type,), # noqa: E501
|
|
190
|
+
'number_of_reviews': (int, none_type,), # noqa: E501
|
|
191
|
+
'product_rating': (str, none_type,), # noqa: E501
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
@cached_property
|
|
195
|
+
def discriminator():
|
|
196
|
+
return None
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
attribute_map = {
|
|
200
|
+
'id': 'id', # noqa: E501
|
|
201
|
+
'title': 'title', # noqa: E501
|
|
202
|
+
'link': 'link', # noqa: E501
|
|
203
|
+
'image_link': 'imageLink', # noqa: E501
|
|
204
|
+
'channel': 'channel', # noqa: E501
|
|
205
|
+
'offer_id': 'offerId', # noqa: E501
|
|
206
|
+
'description': 'description', # noqa: E501
|
|
207
|
+
'additional_image_links': 'additionalImageLinks', # noqa: E501
|
|
208
|
+
'content_language': 'contentLanguage', # noqa: E501
|
|
209
|
+
'target_country': 'targetCountry', # noqa: E501
|
|
210
|
+
'expiration_date': 'expirationDate', # noqa: E501
|
|
211
|
+
'adult': 'adult', # noqa: E501
|
|
212
|
+
'kind': 'kind', # noqa: E501
|
|
213
|
+
'brand': 'brand', # noqa: E501
|
|
214
|
+
'color': 'color', # noqa: E501
|
|
215
|
+
'google_product_category': 'googleProductCategory', # noqa: E501
|
|
216
|
+
'gtin': 'gtin', # noqa: E501
|
|
217
|
+
'item_group_id': 'itemGroupId', # noqa: E501
|
|
218
|
+
'material': 'material', # noqa: E501
|
|
219
|
+
'mpn': 'mpn', # noqa: E501
|
|
220
|
+
'pattern': 'pattern', # noqa: E501
|
|
221
|
+
'price': 'price', # noqa: E501
|
|
222
|
+
'sale_price': 'salePrice', # noqa: E501
|
|
223
|
+
'sale_price_effective_date': 'salePriceEffectiveDate', # noqa: E501
|
|
224
|
+
'shipping': 'shipping', # noqa: E501
|
|
225
|
+
'shipping_weight': 'shippingWeight', # noqa: E501
|
|
226
|
+
'sizes': 'sizes', # noqa: E501
|
|
227
|
+
'taxes': 'taxes', # noqa: E501
|
|
228
|
+
'custom_attributes': 'customAttributes', # noqa: E501
|
|
229
|
+
'identifier_exists': 'identifierExists', # noqa: E501
|
|
230
|
+
'installment': 'installment', # noqa: E501
|
|
231
|
+
'loyalty_points': 'loyaltyPoints', # noqa: E501
|
|
232
|
+
'multipack': 'multipack', # noqa: E501
|
|
233
|
+
'custom_label0': 'customLabel0', # noqa: E501
|
|
234
|
+
'custom_label1': 'customLabel1', # noqa: E501
|
|
235
|
+
'custom_label2': 'customLabel2', # noqa: E501
|
|
236
|
+
'custom_label3': 'customLabel3', # noqa: E501
|
|
237
|
+
'custom_label4': 'customLabel4', # noqa: E501
|
|
238
|
+
'is_bundle': 'isBundle', # noqa: E501
|
|
239
|
+
'mobile_link': 'mobileLink', # noqa: E501
|
|
240
|
+
'availability_date': 'availabilityDate', # noqa: E501
|
|
241
|
+
'shipping_label': 'shippingLabel', # noqa: E501
|
|
242
|
+
'unit_pricing_measure': 'unitPricingMeasure', # noqa: E501
|
|
243
|
+
'unit_pricing_base_measure': 'unitPricingBaseMeasure', # noqa: E501
|
|
244
|
+
'shipping_length': 'shippingLength', # noqa: E501
|
|
245
|
+
'shipping_width': 'shippingWidth', # noqa: E501
|
|
246
|
+
'shipping_height': 'shippingHeight', # noqa: E501
|
|
247
|
+
'display_ads_id': 'displayAdsId', # noqa: E501
|
|
248
|
+
'display_ads_similar_ids': 'displayAdsSimilarIds', # noqa: E501
|
|
249
|
+
'display_ads_title': 'displayAdsTitle', # noqa: E501
|
|
250
|
+
'display_ads_link': 'displayAdsLink', # noqa: E501
|
|
251
|
+
'display_ads_value': 'displayAdsValue', # noqa: E501
|
|
252
|
+
'sell_on_google_quantity': 'sellOnGoogleQuantity', # noqa: E501
|
|
253
|
+
'promotion_ids': 'promotionIds', # noqa: E501
|
|
254
|
+
'max_handling_time': 'maxHandlingTime', # noqa: E501
|
|
255
|
+
'min_handling_time': 'minHandlingTime', # noqa: E501
|
|
256
|
+
'cost_of_goods_sold': 'costOfGoodsSold', # noqa: E501
|
|
257
|
+
'source': 'source', # noqa: E501
|
|
258
|
+
'included_destinations': 'includedDestinations', # noqa: E501
|
|
259
|
+
'excluded_destinations': 'excludedDestinations', # noqa: E501
|
|
260
|
+
'ads_grouping': 'adsGrouping', # noqa: E501
|
|
261
|
+
'ads_labels': 'adsLabels', # noqa: E501
|
|
262
|
+
'ads_redirect': 'adsRedirect', # noqa: E501
|
|
263
|
+
'product_types': 'productTypes', # noqa: E501
|
|
264
|
+
'product_type_keys': 'productTypeKeys', # noqa: E501
|
|
265
|
+
'age_group': 'ageGroup', # noqa: E501
|
|
266
|
+
'availability': 'availability', # noqa: E501
|
|
267
|
+
'condition': 'condition', # noqa: E501
|
|
268
|
+
'gender': 'gender', # noqa: E501
|
|
269
|
+
'size_system': 'sizeSystem', # noqa: E501
|
|
270
|
+
'size_type': 'sizeType', # noqa: E501
|
|
271
|
+
'energy_efficiency_class': 'energyEfficiencyClass', # noqa: E501
|
|
272
|
+
'min_energy_efficiency_class': 'minEnergyEfficiencyClass', # noqa: E501
|
|
273
|
+
'max_energy_efficiency_class': 'maxEnergyEfficiencyClass', # noqa: E501
|
|
274
|
+
'tax_category': 'taxCategory', # noqa: E501
|
|
275
|
+
'transit_time_label': 'transitTimeLabel', # noqa: E501
|
|
276
|
+
'seller_id': 'sellerId', # noqa: E501
|
|
277
|
+
'external_seller_id': 'externalSellerId', # noqa: E501
|
|
278
|
+
'external_seller_name': 'externalSellerName', # noqa: E501
|
|
279
|
+
'number_of_reviews': 'numberOfReviews', # noqa: E501
|
|
280
|
+
'product_rating': 'productRating', # noqa: E501
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
read_only_vars = {
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
_composed_schemas = {}
|
|
287
|
+
|
|
288
|
+
@classmethod
|
|
289
|
+
@convert_js_args_to_python_args
|
|
290
|
+
def _from_openapi_data(cls, id, title, link, image_link, *args, **kwargs): # noqa: E501
|
|
291
|
+
"""Product - a model defined in OpenAPI
|
|
292
|
+
|
|
293
|
+
Args:
|
|
294
|
+
id (str): A unique identifier for the item. Aka Product ID. Don’t use casing to make IDs unique.
|
|
295
|
+
title (str): Title of the item. (500 UTF8 characters max).
|
|
296
|
+
link (str): URL directly linking to your item's page on your website. (1000 UTF8 characters max).
|
|
297
|
+
image_link (str): URL of an image of the item. Supported formats: PNG, JPEG, GIF. (2000 UTF8 characters max).
|
|
298
|
+
|
|
299
|
+
Keyword Args:
|
|
300
|
+
channel (str): The item's channel (online only).. defaults to "online", must be one of ["online", ] # noqa: E501
|
|
301
|
+
_check_type (bool): if True, values for parameters in openapi_types
|
|
302
|
+
will be type checked and a TypeError will be
|
|
303
|
+
raised if the wrong type is input.
|
|
304
|
+
Defaults to True
|
|
305
|
+
_path_to_item (tuple/list): This is a list of keys or values to
|
|
306
|
+
drill down to the model in received_data
|
|
307
|
+
when deserializing a response
|
|
308
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
309
|
+
are serialized names, as specified in the OpenAPI document.
|
|
310
|
+
False if the variable names in the input data
|
|
311
|
+
are pythonic names, e.g. snake case (default)
|
|
312
|
+
_configuration (Configuration): the instance to use when
|
|
313
|
+
deserializing a file_type parameter.
|
|
314
|
+
If passed, type conversion is attempted
|
|
315
|
+
If omitted no type conversion is done.
|
|
316
|
+
_visited_composed_classes (tuple): This stores a tuple of
|
|
317
|
+
classes that we have traveled through so that
|
|
318
|
+
if we see that class again we will not use its
|
|
319
|
+
discriminator again.
|
|
320
|
+
When traveling through a discriminator, the
|
|
321
|
+
composed schema that is
|
|
322
|
+
is traveled through is added to this set.
|
|
323
|
+
For example if Animal has a discriminator
|
|
324
|
+
petType and we pass in "Dog", and the class Dog
|
|
325
|
+
allOf includes Animal, we move through Animal
|
|
326
|
+
once using the discriminator, and pick Dog.
|
|
327
|
+
Then in Dog, we will make an instance of the
|
|
328
|
+
Animal class but this time we won't travel
|
|
329
|
+
through its discriminator because we passed in
|
|
330
|
+
_visited_composed_classes = (Animal,)
|
|
331
|
+
offer_id (str, none_type): Not used by Criteo.. [optional] # noqa: E501
|
|
332
|
+
description (str, none_type): Description of the item. RECOMMENDED. (5000 UTF8 characters max).. [optional] # noqa: E501
|
|
333
|
+
additional_image_links ([str], none_type): Additional URLs of images of the item.. [optional] # noqa: E501
|
|
334
|
+
content_language (str, none_type): The two-letter ISO 639-1 language code for the item.. [optional] # noqa: E501
|
|
335
|
+
target_country (str, none_type): The CLDR territory code for the item.. [optional] # noqa: E501
|
|
336
|
+
expiration_date (str, none_type): Date on which the item should expire, as specified upon insertion, in ISO 8601 format.. [optional] # noqa: E501
|
|
337
|
+
adult (bool, none_type): Set to true if the item is targeted towards adults. RECOMMENDED.. [optional] # noqa: E501
|
|
338
|
+
kind (str, none_type): Identifies what kind of resource this is.. [optional] # noqa: E501
|
|
339
|
+
brand (str, none_type): Brand of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
340
|
+
color (str, none_type): Color of the item.. [optional] # noqa: E501
|
|
341
|
+
google_product_category (str, none_type): Google's category of the item (see Google product taxonomy). RECOMMENDED.. [optional] # noqa: E501
|
|
342
|
+
gtin (str, none_type): Global Trade Item Number (GTIN) of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
343
|
+
item_group_id (str, none_type): Shared identifier for all variants of the same product. RECOMMENDED. Don’t use casing to make IDs unique. (50 characters max). [optional] # noqa: E501
|
|
344
|
+
material (str, none_type): The material of which the item is made.. [optional] # noqa: E501
|
|
345
|
+
mpn (str, none_type): Manufacturer Part Number (MPN) of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
346
|
+
pattern (str, none_type): The item's pattern (e.g. polka dots).. [optional] # noqa: E501
|
|
347
|
+
price (Price): [optional] # noqa: E501
|
|
348
|
+
sale_price (Price): [optional] # noqa: E501
|
|
349
|
+
sale_price_effective_date (str, none_type): Date range during which the item is on sale.. [optional] # noqa: E501
|
|
350
|
+
shipping ([ProductShipping], none_type): Shipping rules.. [optional] # noqa: E501
|
|
351
|
+
shipping_weight (ProductShippingWeight): [optional] # noqa: E501
|
|
352
|
+
sizes ([str], none_type): Size of the item. RECOMMENDED. Only one value is allowed. For variants with different sizes, insert a separate product for each size with the same itemGroupId value.. [optional] # noqa: E501
|
|
353
|
+
taxes ([ProductTax], none_type): Tax information.. [optional] # noqa: E501
|
|
354
|
+
custom_attributes ([CustomAttribute], none_type): A list of custom (merchant-provided) attributes. This is useful for submitting attributes not explicitly exposed by the API. Declaring attributes explicitly exposed by the API using is forbidden. [optional] # noqa: E501
|
|
355
|
+
identifier_exists (bool, none_type): False when the item does not have unique product identifiers appropriate to its category, such as GTIN, MPN, and brand. Required according to the Unique Product Identifier Rules for all target countries except for Canada.. [optional] # noqa: E501
|
|
356
|
+
installment (Installment): [optional] # noqa: E501
|
|
357
|
+
loyalty_points (LoyaltyPoints): [optional] # noqa: E501
|
|
358
|
+
multipack (int, none_type): The number of identical products in a merchant-defined multipack. To avoid any overflow issue, pass it as a string.. [optional] # noqa: E501
|
|
359
|
+
custom_label0 (str, none_type): Custom label 0 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
360
|
+
custom_label1 (str, none_type): Custom label 1 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
361
|
+
custom_label2 (str, none_type): Custom label 2 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
362
|
+
custom_label3 (str, none_type): Custom label 3 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
363
|
+
custom_label4 (str, none_type): Custom label 4 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
364
|
+
is_bundle (bool, none_type): Whether the item is a merchant-defined bundle. A bundle is a custom grouping of different products sold by a merchant for a single price.. [optional] # noqa: E501
|
|
365
|
+
mobile_link (str, none_type): accounts.link to a mobile-optimized version of the landing page.. [optional] # noqa: E501
|
|
366
|
+
availability_date (str, none_type): The day a pre-ordered product becomes available for delivery, in ISO 8601 format.. [optional] # noqa: E501
|
|
367
|
+
shipping_label (str, none_type): The shipping label of the product, used to group product in account-level shipping rules.. [optional] # noqa: E501
|
|
368
|
+
unit_pricing_measure (ProductUnitPricingMeasure): [optional] # noqa: E501
|
|
369
|
+
unit_pricing_base_measure (ProductUnitPricingBaseMeasure): [optional] # noqa: E501
|
|
370
|
+
shipping_length (ProductShippingDimension): [optional] # noqa: E501
|
|
371
|
+
shipping_width (ProductShippingDimension): [optional] # noqa: E501
|
|
372
|
+
shipping_height (ProductShippingDimension): [optional] # noqa: E501
|
|
373
|
+
display_ads_id (str, none_type): An identifier for an item for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
374
|
+
display_ads_similar_ids ([str], none_type): Advertiser-specified recommendations.. [optional] # noqa: E501
|
|
375
|
+
display_ads_title (str, none_type): Title of an item for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
376
|
+
display_ads_link (str, none_type): URL directly to your item's landing page for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
377
|
+
display_ads_value (float, none_type): Offer margin for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
378
|
+
sell_on_google_quantity (int, none_type): The quantity of the product that is available for selling on Google. Supported only for online products.. [optional] # noqa: E501
|
|
379
|
+
promotion_ids ([str], none_type): The unique ID of a promotion.. [optional] # noqa: E501
|
|
380
|
+
max_handling_time (int, none_type): Maximal product handling time (in business days).. [optional] # noqa: E501
|
|
381
|
+
min_handling_time (int, none_type): Minimal product handling time (in business days).. [optional] # noqa: E501
|
|
382
|
+
cost_of_goods_sold (Price): [optional] # noqa: E501
|
|
383
|
+
source (str, none_type): The source of the offer, i.e., how the offer was created.. [optional] # noqa: E501
|
|
384
|
+
included_destinations ([str], none_type): The list of destinations to include for this target (corresponds to checked check boxes in Merchant Center). Default destinations are always included unless provided in excludedDestinations.. [optional] # noqa: E501
|
|
385
|
+
excluded_destinations ([str], none_type): The list of destinations to exclude for this target (corresponds to unchecked check boxes in Merchant Center).. [optional] # noqa: E501
|
|
386
|
+
ads_grouping (str, none_type): Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.. [optional] # noqa: E501
|
|
387
|
+
ads_labels ([str], none_type): Similar to adsGrouping, but only works on CPC.. [optional] # noqa: E501
|
|
388
|
+
ads_redirect (str, none_type): Allows advertisers to override the item URL when the product is shown within the context of Product Ads.. [optional] # noqa: E501
|
|
389
|
+
product_types ([str], none_type): Categories of the item (formatted as in products data specification).. [optional] # noqa: E501
|
|
390
|
+
product_type_keys ([str], none_type): Category keys of the item (formatted as in productTypes).. [optional] # noqa: E501
|
|
391
|
+
age_group (str, none_type): Target age group of the item.. [optional] # noqa: E501
|
|
392
|
+
availability (str, none_type): Availability status of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
393
|
+
condition (str, none_type): Condition or state of the item.. [optional] # noqa: E501
|
|
394
|
+
gender (str, none_type): Target gender of the item.. [optional] # noqa: E501
|
|
395
|
+
size_system (str, none_type): System in which the size is specified. Recommended for apparel items.. [optional] # noqa: E501
|
|
396
|
+
size_type (str, none_type): The cut of the item. Recommended for apparel items.. [optional] # noqa: E501
|
|
397
|
+
energy_efficiency_class (str, none_type): The energy efficiency class as defined in EU directive 2010/30/EU.. [optional] # noqa: E501
|
|
398
|
+
min_energy_efficiency_class (str, none_type): The energy efficiency class as defined in EU directive 2010/30/EU.. [optional] # noqa: E501
|
|
399
|
+
max_energy_efficiency_class (str, none_type): The energy efficiency class as defined in EU directive 2010/30/EU.. [optional] # noqa: E501
|
|
400
|
+
tax_category (str, none_type): The tax category of the product, used to configure detailed tax nexus in account-level tax settings.. [optional] # noqa: E501
|
|
401
|
+
transit_time_label (str, none_type): The transit time label of the product, used to group product in account-level transit time tables.. [optional] # noqa: E501
|
|
402
|
+
seller_id (str, none_type): (Deprecated Field) The external ID of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.. [optional] # noqa: E501
|
|
403
|
+
external_seller_id (str, none_type): The external id of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.. [optional] # noqa: E501
|
|
404
|
+
external_seller_name (str, none_type): The external name of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.. [optional] # noqa: E501
|
|
405
|
+
number_of_reviews (int, none_type): The number of customer reviews for the product. [optional] # noqa: E501
|
|
406
|
+
product_rating (str, none_type): The product rating for the product. [optional] # noqa: E501
|
|
407
|
+
"""
|
|
408
|
+
|
|
409
|
+
channel = kwargs.get('channel', "online")
|
|
410
|
+
_check_type = kwargs.pop('_check_type', True)
|
|
411
|
+
_spec_property_naming = kwargs.pop('_spec_property_naming', True)
|
|
412
|
+
_path_to_item = kwargs.pop('_path_to_item', ())
|
|
413
|
+
_configuration = kwargs.pop('_configuration', None)
|
|
414
|
+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
|
415
|
+
|
|
416
|
+
self = super(OpenApiModel, cls).__new__(cls)
|
|
417
|
+
|
|
418
|
+
if args:
|
|
419
|
+
for arg in args:
|
|
420
|
+
if isinstance(arg, dict):
|
|
421
|
+
kwargs.update(arg)
|
|
422
|
+
else:
|
|
423
|
+
raise ApiTypeError(
|
|
424
|
+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
|
425
|
+
args,
|
|
426
|
+
self.__class__.__name__,
|
|
427
|
+
),
|
|
428
|
+
path_to_item=_path_to_item,
|
|
429
|
+
valid_classes=(self.__class__,),
|
|
430
|
+
)
|
|
431
|
+
|
|
432
|
+
self._data_store = {}
|
|
433
|
+
self._check_type = _check_type
|
|
434
|
+
self._spec_property_naming = _spec_property_naming
|
|
435
|
+
self._path_to_item = _path_to_item
|
|
436
|
+
self._configuration = _configuration
|
|
437
|
+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
|
438
|
+
|
|
439
|
+
self.id = id
|
|
440
|
+
self.title = title
|
|
441
|
+
self.link = link
|
|
442
|
+
self.image_link = image_link
|
|
443
|
+
self.channel = channel
|
|
444
|
+
for var_name, var_value in kwargs.items():
|
|
445
|
+
if var_name not in self.attribute_map and \
|
|
446
|
+
self._configuration is not None and \
|
|
447
|
+
self._configuration.discard_unknown_keys and \
|
|
448
|
+
self.additional_properties_type is None:
|
|
449
|
+
# discard variable.
|
|
450
|
+
continue
|
|
451
|
+
setattr(self, var_name, var_value)
|
|
452
|
+
return self
|
|
453
|
+
|
|
454
|
+
required_properties = set([
|
|
455
|
+
'_data_store',
|
|
456
|
+
'_check_type',
|
|
457
|
+
'_spec_property_naming',
|
|
458
|
+
'_path_to_item',
|
|
459
|
+
'_configuration',
|
|
460
|
+
'_visited_composed_classes',
|
|
461
|
+
])
|
|
462
|
+
|
|
463
|
+
@convert_js_args_to_python_args
|
|
464
|
+
def __init__(self, id, title, link, image_link, *args, **kwargs): # noqa: E501
|
|
465
|
+
"""Product - a model defined in OpenAPI
|
|
466
|
+
|
|
467
|
+
Args:
|
|
468
|
+
id (str): A unique identifier for the item. Aka Product ID. Don’t use casing to make IDs unique.
|
|
469
|
+
title (str): Title of the item. (500 UTF8 characters max).
|
|
470
|
+
link (str): URL directly linking to your item's page on your website. (1000 UTF8 characters max).
|
|
471
|
+
image_link (str): URL of an image of the item. Supported formats: PNG, JPEG, GIF. (2000 UTF8 characters max).
|
|
472
|
+
|
|
473
|
+
Keyword Args:
|
|
474
|
+
channel (str): The item's channel (online only).. defaults to "online", must be one of ["online", ] # noqa: E501
|
|
475
|
+
_check_type (bool): if True, values for parameters in openapi_types
|
|
476
|
+
will be type checked and a TypeError will be
|
|
477
|
+
raised if the wrong type is input.
|
|
478
|
+
Defaults to True
|
|
479
|
+
_path_to_item (tuple/list): This is a list of keys or values to
|
|
480
|
+
drill down to the model in received_data
|
|
481
|
+
when deserializing a response
|
|
482
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
483
|
+
are serialized names, as specified in the OpenAPI document.
|
|
484
|
+
False if the variable names in the input data
|
|
485
|
+
are pythonic names, e.g. snake case (default)
|
|
486
|
+
_configuration (Configuration): the instance to use when
|
|
487
|
+
deserializing a file_type parameter.
|
|
488
|
+
If passed, type conversion is attempted
|
|
489
|
+
If omitted no type conversion is done.
|
|
490
|
+
_visited_composed_classes (tuple): This stores a tuple of
|
|
491
|
+
classes that we have traveled through so that
|
|
492
|
+
if we see that class again we will not use its
|
|
493
|
+
discriminator again.
|
|
494
|
+
When traveling through a discriminator, the
|
|
495
|
+
composed schema that is
|
|
496
|
+
is traveled through is added to this set.
|
|
497
|
+
For example if Animal has a discriminator
|
|
498
|
+
petType and we pass in "Dog", and the class Dog
|
|
499
|
+
allOf includes Animal, we move through Animal
|
|
500
|
+
once using the discriminator, and pick Dog.
|
|
501
|
+
Then in Dog, we will make an instance of the
|
|
502
|
+
Animal class but this time we won't travel
|
|
503
|
+
through its discriminator because we passed in
|
|
504
|
+
_visited_composed_classes = (Animal,)
|
|
505
|
+
offer_id (str, none_type): Not used by Criteo.. [optional] # noqa: E501
|
|
506
|
+
description (str, none_type): Description of the item. RECOMMENDED. (5000 UTF8 characters max).. [optional] # noqa: E501
|
|
507
|
+
additional_image_links ([str], none_type): Additional URLs of images of the item.. [optional] # noqa: E501
|
|
508
|
+
content_language (str, none_type): The two-letter ISO 639-1 language code for the item.. [optional] # noqa: E501
|
|
509
|
+
target_country (str, none_type): The CLDR territory code for the item.. [optional] # noqa: E501
|
|
510
|
+
expiration_date (str, none_type): Date on which the item should expire, as specified upon insertion, in ISO 8601 format.. [optional] # noqa: E501
|
|
511
|
+
adult (bool, none_type): Set to true if the item is targeted towards adults. RECOMMENDED.. [optional] # noqa: E501
|
|
512
|
+
kind (str, none_type): Identifies what kind of resource this is.. [optional] # noqa: E501
|
|
513
|
+
brand (str, none_type): Brand of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
514
|
+
color (str, none_type): Color of the item.. [optional] # noqa: E501
|
|
515
|
+
google_product_category (str, none_type): Google's category of the item (see Google product taxonomy). RECOMMENDED.. [optional] # noqa: E501
|
|
516
|
+
gtin (str, none_type): Global Trade Item Number (GTIN) of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
517
|
+
item_group_id (str, none_type): Shared identifier for all variants of the same product. RECOMMENDED. Don’t use casing to make IDs unique. (50 characters max). [optional] # noqa: E501
|
|
518
|
+
material (str, none_type): The material of which the item is made.. [optional] # noqa: E501
|
|
519
|
+
mpn (str, none_type): Manufacturer Part Number (MPN) of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
520
|
+
pattern (str, none_type): The item's pattern (e.g. polka dots).. [optional] # noqa: E501
|
|
521
|
+
price (Price): [optional] # noqa: E501
|
|
522
|
+
sale_price (Price): [optional] # noqa: E501
|
|
523
|
+
sale_price_effective_date (str, none_type): Date range during which the item is on sale.. [optional] # noqa: E501
|
|
524
|
+
shipping ([ProductShipping], none_type): Shipping rules.. [optional] # noqa: E501
|
|
525
|
+
shipping_weight (ProductShippingWeight): [optional] # noqa: E501
|
|
526
|
+
sizes ([str], none_type): Size of the item. RECOMMENDED. Only one value is allowed. For variants with different sizes, insert a separate product for each size with the same itemGroupId value.. [optional] # noqa: E501
|
|
527
|
+
taxes ([ProductTax], none_type): Tax information.. [optional] # noqa: E501
|
|
528
|
+
custom_attributes ([CustomAttribute], none_type): A list of custom (merchant-provided) attributes. This is useful for submitting attributes not explicitly exposed by the API. Declaring attributes explicitly exposed by the API using is forbidden. [optional] # noqa: E501
|
|
529
|
+
identifier_exists (bool, none_type): False when the item does not have unique product identifiers appropriate to its category, such as GTIN, MPN, and brand. Required according to the Unique Product Identifier Rules for all target countries except for Canada.. [optional] # noqa: E501
|
|
530
|
+
installment (Installment): [optional] # noqa: E501
|
|
531
|
+
loyalty_points (LoyaltyPoints): [optional] # noqa: E501
|
|
532
|
+
multipack (int, none_type): The number of identical products in a merchant-defined multipack. To avoid any overflow issue, pass it as a string.. [optional] # noqa: E501
|
|
533
|
+
custom_label0 (str, none_type): Custom label 0 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
534
|
+
custom_label1 (str, none_type): Custom label 1 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
535
|
+
custom_label2 (str, none_type): Custom label 2 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
536
|
+
custom_label3 (str, none_type): Custom label 3 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
537
|
+
custom_label4 (str, none_type): Custom label 4 for custom grouping of items in a Shopping campaign.. [optional] # noqa: E501
|
|
538
|
+
is_bundle (bool, none_type): Whether the item is a merchant-defined bundle. A bundle is a custom grouping of different products sold by a merchant for a single price.. [optional] # noqa: E501
|
|
539
|
+
mobile_link (str, none_type): accounts.link to a mobile-optimized version of the landing page.. [optional] # noqa: E501
|
|
540
|
+
availability_date (str, none_type): The day a pre-ordered product becomes available for delivery, in ISO 8601 format.. [optional] # noqa: E501
|
|
541
|
+
shipping_label (str, none_type): The shipping label of the product, used to group product in account-level shipping rules.. [optional] # noqa: E501
|
|
542
|
+
unit_pricing_measure (ProductUnitPricingMeasure): [optional] # noqa: E501
|
|
543
|
+
unit_pricing_base_measure (ProductUnitPricingBaseMeasure): [optional] # noqa: E501
|
|
544
|
+
shipping_length (ProductShippingDimension): [optional] # noqa: E501
|
|
545
|
+
shipping_width (ProductShippingDimension): [optional] # noqa: E501
|
|
546
|
+
shipping_height (ProductShippingDimension): [optional] # noqa: E501
|
|
547
|
+
display_ads_id (str, none_type): An identifier for an item for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
548
|
+
display_ads_similar_ids ([str], none_type): Advertiser-specified recommendations.. [optional] # noqa: E501
|
|
549
|
+
display_ads_title (str, none_type): Title of an item for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
550
|
+
display_ads_link (str, none_type): URL directly to your item's landing page for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
551
|
+
display_ads_value (float, none_type): Offer margin for dynamic remarketing campaigns.. [optional] # noqa: E501
|
|
552
|
+
sell_on_google_quantity (int, none_type): The quantity of the product that is available for selling on Google. Supported only for online products.. [optional] # noqa: E501
|
|
553
|
+
promotion_ids ([str], none_type): The unique ID of a promotion.. [optional] # noqa: E501
|
|
554
|
+
max_handling_time (int, none_type): Maximal product handling time (in business days).. [optional] # noqa: E501
|
|
555
|
+
min_handling_time (int, none_type): Minimal product handling time (in business days).. [optional] # noqa: E501
|
|
556
|
+
cost_of_goods_sold (Price): [optional] # noqa: E501
|
|
557
|
+
source (str, none_type): The source of the offer, i.e., how the offer was created.. [optional] # noqa: E501
|
|
558
|
+
included_destinations ([str], none_type): The list of destinations to include for this target (corresponds to checked check boxes in Merchant Center). Default destinations are always included unless provided in excludedDestinations.. [optional] # noqa: E501
|
|
559
|
+
excluded_destinations ([str], none_type): The list of destinations to exclude for this target (corresponds to unchecked check boxes in Merchant Center).. [optional] # noqa: E501
|
|
560
|
+
ads_grouping (str, none_type): Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.. [optional] # noqa: E501
|
|
561
|
+
ads_labels ([str], none_type): Similar to adsGrouping, but only works on CPC.. [optional] # noqa: E501
|
|
562
|
+
ads_redirect (str, none_type): Allows advertisers to override the item URL when the product is shown within the context of Product Ads.. [optional] # noqa: E501
|
|
563
|
+
product_types ([str], none_type): Categories of the item (formatted as in products data specification).. [optional] # noqa: E501
|
|
564
|
+
product_type_keys ([str], none_type): Category keys of the item (formatted as in productTypes).. [optional] # noqa: E501
|
|
565
|
+
age_group (str, none_type): Target age group of the item.. [optional] # noqa: E501
|
|
566
|
+
availability (str, none_type): Availability status of the item. RECOMMENDED.. [optional] # noqa: E501
|
|
567
|
+
condition (str, none_type): Condition or state of the item.. [optional] # noqa: E501
|
|
568
|
+
gender (str, none_type): Target gender of the item.. [optional] # noqa: E501
|
|
569
|
+
size_system (str, none_type): System in which the size is specified. Recommended for apparel items.. [optional] # noqa: E501
|
|
570
|
+
size_type (str, none_type): The cut of the item. Recommended for apparel items.. [optional] # noqa: E501
|
|
571
|
+
energy_efficiency_class (str, none_type): The energy efficiency class as defined in EU directive 2010/30/EU.. [optional] # noqa: E501
|
|
572
|
+
min_energy_efficiency_class (str, none_type): The energy efficiency class as defined in EU directive 2010/30/EU.. [optional] # noqa: E501
|
|
573
|
+
max_energy_efficiency_class (str, none_type): The energy efficiency class as defined in EU directive 2010/30/EU.. [optional] # noqa: E501
|
|
574
|
+
tax_category (str, none_type): The tax category of the product, used to configure detailed tax nexus in account-level tax settings.. [optional] # noqa: E501
|
|
575
|
+
transit_time_label (str, none_type): The transit time label of the product, used to group product in account-level transit time tables.. [optional] # noqa: E501
|
|
576
|
+
seller_id (str, none_type): (Deprecated Field) The external ID of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.. [optional] # noqa: E501
|
|
577
|
+
external_seller_id (str, none_type): The external id of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.. [optional] # noqa: E501
|
|
578
|
+
external_seller_name (str, none_type): The external name of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.. [optional] # noqa: E501
|
|
579
|
+
number_of_reviews (int, none_type): The number of customer reviews for the product. [optional] # noqa: E501
|
|
580
|
+
product_rating (str, none_type): The product rating for the product. [optional] # noqa: E501
|
|
581
|
+
"""
|
|
582
|
+
|
|
583
|
+
channel = kwargs.get('channel', "online")
|
|
584
|
+
_check_type = kwargs.pop('_check_type', True)
|
|
585
|
+
_spec_property_naming = kwargs.pop('_spec_property_naming', False)
|
|
586
|
+
_path_to_item = kwargs.pop('_path_to_item', ())
|
|
587
|
+
_configuration = kwargs.pop('_configuration', None)
|
|
588
|
+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
|
589
|
+
|
|
590
|
+
if args:
|
|
591
|
+
for arg in args:
|
|
592
|
+
if isinstance(arg, dict):
|
|
593
|
+
kwargs.update(arg)
|
|
594
|
+
else:
|
|
595
|
+
raise ApiTypeError(
|
|
596
|
+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
|
597
|
+
args,
|
|
598
|
+
self.__class__.__name__,
|
|
599
|
+
),
|
|
600
|
+
path_to_item=_path_to_item,
|
|
601
|
+
valid_classes=(self.__class__,),
|
|
602
|
+
)
|
|
603
|
+
|
|
604
|
+
self._data_store = {}
|
|
605
|
+
self._check_type = _check_type
|
|
606
|
+
self._spec_property_naming = _spec_property_naming
|
|
607
|
+
self._path_to_item = _path_to_item
|
|
608
|
+
self._configuration = _configuration
|
|
609
|
+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
|
610
|
+
|
|
611
|
+
self.id = id
|
|
612
|
+
self.title = title
|
|
613
|
+
self.link = link
|
|
614
|
+
self.image_link = image_link
|
|
615
|
+
self.channel = channel
|
|
616
|
+
for var_name, var_value in kwargs.items():
|
|
617
|
+
if var_name not in self.attribute_map and \
|
|
618
|
+
self._configuration is not None and \
|
|
619
|
+
self._configuration.discard_unknown_keys and \
|
|
620
|
+
self.additional_properties_type is None:
|
|
621
|
+
# discard variable.
|
|
622
|
+
continue
|
|
623
|
+
setattr(self, var_name, var_value)
|
|
624
|
+
if var_name in self.read_only_vars:
|
|
625
|
+
raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
|
|
626
|
+
f"class with read only attributes.")
|