ultracart-rest-sdk 4.1.5__py3-none-any.whl → 4.1.7__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 ultracart-rest-sdk might be problematic. Click here for more details.

ultracart/__init__.py CHANGED
@@ -11,7 +11,7 @@
11
11
  """
12
12
 
13
13
 
14
- __version__ = "4.1.5"
14
+ __version__ = "4.1.7"
15
15
 
16
16
  # import ApiClient
17
17
  from ultracart.api_client import ApiClient
@@ -1438,6 +1438,103 @@ class OrderApi(object):
1438
1438
  },
1439
1439
  api_client=api_client
1440
1440
  )
1441
+ self.refund_order_completely_endpoint = _Endpoint(
1442
+ settings={
1443
+ 'response_type': (OrderResponse,),
1444
+ 'auth': [
1445
+ 'ultraCartOauth',
1446
+ 'ultraCartSimpleApiKey'
1447
+ ],
1448
+ 'endpoint_path': '/order/orders/{order_id}/refund_completely',
1449
+ 'operation_id': 'refund_order_completely',
1450
+ 'http_method': 'PUT',
1451
+ 'servers': None,
1452
+ },
1453
+ params_map={
1454
+ 'all': [
1455
+ 'order_id',
1456
+ 'reject_after_refund',
1457
+ 'skip_customer_notification',
1458
+ 'auto_order_cancel',
1459
+ 'manual_refund',
1460
+ 'reverse_affiliate_transactions',
1461
+ 'issue_store_credit',
1462
+ 'auto_order_cancel_reason',
1463
+ 'refund_reason',
1464
+ 'reject_reason',
1465
+ ],
1466
+ 'required': [
1467
+ 'order_id',
1468
+ ],
1469
+ 'nullable': [
1470
+ ],
1471
+ 'enum': [
1472
+ ],
1473
+ 'validation': [
1474
+ ]
1475
+ },
1476
+ root_map={
1477
+ 'validations': {
1478
+ },
1479
+ 'allowed_values': {
1480
+ },
1481
+ 'openapi_types': {
1482
+ 'order_id':
1483
+ (str,),
1484
+ 'reject_after_refund':
1485
+ (bool,),
1486
+ 'skip_customer_notification':
1487
+ (bool,),
1488
+ 'auto_order_cancel':
1489
+ (bool,),
1490
+ 'manual_refund':
1491
+ (bool,),
1492
+ 'reverse_affiliate_transactions':
1493
+ (bool,),
1494
+ 'issue_store_credit':
1495
+ (bool,),
1496
+ 'auto_order_cancel_reason':
1497
+ (str,),
1498
+ 'refund_reason':
1499
+ (str,),
1500
+ 'reject_reason':
1501
+ (str,),
1502
+ },
1503
+ 'attribute_map': {
1504
+ 'order_id': 'order_id',
1505
+ 'reject_after_refund': 'reject_after_refund',
1506
+ 'skip_customer_notification': 'skip_customer_notification',
1507
+ 'auto_order_cancel': 'auto_order_cancel',
1508
+ 'manual_refund': 'manual_refund',
1509
+ 'reverse_affiliate_transactions': 'reverse_affiliate_transactions',
1510
+ 'issue_store_credit': 'issue_store_credit',
1511
+ 'auto_order_cancel_reason': 'auto_order_cancel_reason',
1512
+ 'refund_reason': 'refund_reason',
1513
+ 'reject_reason': 'reject_reason',
1514
+ },
1515
+ 'location_map': {
1516
+ 'order_id': 'path',
1517
+ 'reject_after_refund': 'query',
1518
+ 'skip_customer_notification': 'query',
1519
+ 'auto_order_cancel': 'query',
1520
+ 'manual_refund': 'query',
1521
+ 'reverse_affiliate_transactions': 'query',
1522
+ 'issue_store_credit': 'query',
1523
+ 'auto_order_cancel_reason': 'query',
1524
+ 'refund_reason': 'query',
1525
+ 'reject_reason': 'query',
1526
+ },
1527
+ 'collection_format_map': {
1528
+ }
1529
+ },
1530
+ headers_map={
1531
+ 'accept': [
1532
+ 'application/json'
1533
+ ],
1534
+ 'content_type': [],
1535
+ },
1536
+ api_client=api_client
1537
+ )
1441
1538
  self.replacement_endpoint = _Endpoint(
1442
1539
  settings={
1443
1540
  'response_type': (OrderReplacementResponse,),
@@ -3572,6 +3669,98 @@ class OrderApi(object):
3572
3669
  order
3573
3670
  return self.refund_order_endpoint.call_with_http_info(**kwargs)
3574
3671
 
3672
+ def refund_order_completely(
3673
+ self,
3674
+ order_id,
3675
+ **kwargs
3676
+ ):
3677
+ """Refund an order completely # noqa: E501
3678
+
3679
+ Perform a refund operation on an order and then update the order if successful. # noqa: E501
3680
+ This method makes a synchronous HTTP request by default. To make an
3681
+ asynchronous HTTP request, please pass async_req=True
3682
+
3683
+ >>> thread = api.refund_order_completely(order_id, async_req=True)
3684
+ >>> result = thread.get()
3685
+
3686
+ Args:
3687
+ order_id (str): The order id to refund.
3688
+
3689
+ Keyword Args:
3690
+ reject_after_refund (bool): Reject order after refund. [optional] if omitted the server will use the default value of False
3691
+ skip_customer_notification (bool): Skip customer email notification. [optional] if omitted the server will use the default value of False
3692
+ auto_order_cancel (bool): Cancel associated auto orders. [optional] if omitted the server will use the default value of False
3693
+ manual_refund (bool): Consider a manual refund done externally. [optional] if omitted the server will use the default value of False
3694
+ reverse_affiliate_transactions (bool): Reverse affiliate transactions. [optional] if omitted the server will use the default value of True
3695
+ issue_store_credit (bool): Issue a store credit instead of refunding the original payment method, loyalty must be configured on merchant account. [optional] if omitted the server will use the default value of False
3696
+ auto_order_cancel_reason (str): Reason for auto orders cancellation. [optional]
3697
+ refund_reason (str): Reason for refund. [optional]
3698
+ reject_reason (str): Reason for reject. [optional]
3699
+ _return_http_data_only (bool): response data without head status
3700
+ code and headers. Default is True.
3701
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
3702
+ will be returned without reading/decoding response data.
3703
+ Default is True.
3704
+ _request_timeout (int/float/tuple): timeout setting for this request. If
3705
+ one number provided, it will be total request timeout. It can also
3706
+ be a pair (tuple) of (connection, read) timeouts.
3707
+ Default is None.
3708
+ _check_input_type (bool): specifies if type checking
3709
+ should be done one the data sent to the server.
3710
+ Default is True.
3711
+ _check_return_type (bool): specifies if type checking
3712
+ should be done one the data received from the server.
3713
+ Default is True.
3714
+ _spec_property_naming (bool): True if the variable names in the input data
3715
+ are serialized names, as specified in the OpenAPI document.
3716
+ False if the variable names in the input data
3717
+ are pythonic names, e.g. snake case (default)
3718
+ _content_type (str/None): force body content-type.
3719
+ Default is None and content-type will be predicted by allowed
3720
+ content-types and body.
3721
+ _host_index (int/None): specifies the index of the server
3722
+ that we want to use.
3723
+ Default is read from the configuration.
3724
+ _request_auths (list): set to override the auth_settings for an a single
3725
+ request; this effectively ignores the authentication
3726
+ in the spec for a single request.
3727
+ Default is None
3728
+ async_req (bool): execute request asynchronously
3729
+
3730
+ Returns:
3731
+ OrderResponse
3732
+ If the method is called asynchronously, returns the request
3733
+ thread.
3734
+ """
3735
+ kwargs['async_req'] = kwargs.get(
3736
+ 'async_req', False
3737
+ )
3738
+ kwargs['_return_http_data_only'] = kwargs.get(
3739
+ '_return_http_data_only', True
3740
+ )
3741
+ kwargs['_preload_content'] = kwargs.get(
3742
+ '_preload_content', True
3743
+ )
3744
+ kwargs['_request_timeout'] = kwargs.get(
3745
+ '_request_timeout', None
3746
+ )
3747
+ kwargs['_check_input_type'] = kwargs.get(
3748
+ '_check_input_type', True
3749
+ )
3750
+ kwargs['_check_return_type'] = kwargs.get(
3751
+ '_check_return_type', True
3752
+ )
3753
+ kwargs['_spec_property_naming'] = kwargs.get(
3754
+ '_spec_property_naming', False
3755
+ )
3756
+ kwargs['_content_type'] = kwargs.get(
3757
+ '_content_type')
3758
+ kwargs['_host_index'] = kwargs.get('_host_index')
3759
+ kwargs['_request_auths'] = kwargs.get('_request_auths', None)
3760
+ kwargs['order_id'] = \
3761
+ order_id
3762
+ return self.refund_order_completely_endpoint.call_with_http_info(**kwargs)
3763
+
3575
3764
  def replacement(
3576
3765
  self,
3577
3766
  order_id,
ultracart/api_client.py CHANGED
@@ -77,7 +77,7 @@ class ApiClient(object):
77
77
  self.default_headers[header_name] = header_value
78
78
  self.cookie = cookie
79
79
  # Set default User-Agent.
80
- self.user_agent = 'OpenAPI-Generator/4.1.5/python'
80
+ self.user_agent = 'OpenAPI-Generator/4.1.7/python'
81
81
 
82
82
  def __enter__(self):
83
83
  return self
@@ -422,7 +422,7 @@ conf = ultracart.Configuration(
422
422
  "OS: {env}\n"\
423
423
  "Python Version: {pyversion}\n"\
424
424
  "Version of the API: 2.0.0\n"\
425
- "SDK Package Version: 4.1.5".\
425
+ "SDK Package Version: 4.1.7".\
426
426
  format(env=sys.platform, pyversion=sys.version)
427
427
 
428
428
  def get_host_settings(self):
@@ -32,7 +32,9 @@ from ultracart.exceptions import ApiAttributeError
32
32
 
33
33
  def lazy_import():
34
34
  from ultracart.model.channel_partner_order_item_option import ChannelPartnerOrderItemOption
35
+ from ultracart.model.channel_partner_order_item_property import ChannelPartnerOrderItemProperty
35
36
  globals()['ChannelPartnerOrderItemOption'] = ChannelPartnerOrderItemOption
37
+ globals()['ChannelPartnerOrderItemProperty'] = ChannelPartnerOrderItemProperty
36
38
 
37
39
 
38
40
  class ChannelPartnerOrderItem(ModelNormal):
@@ -114,6 +116,7 @@ class ChannelPartnerOrderItem(ModelNormal):
114
116
  'auto_order_schedule': (str,), # noqa: E501
115
117
  'merchant_item_id': (str,), # noqa: E501
116
118
  'options': ([ChannelPartnerOrderItemOption],), # noqa: E501
119
+ 'properties': ([ChannelPartnerOrderItemProperty],), # noqa: E501
117
120
  'quantity': (float,), # noqa: E501
118
121
  'upsell': (bool,), # noqa: E501
119
122
  }
@@ -129,6 +132,7 @@ class ChannelPartnerOrderItem(ModelNormal):
129
132
  'auto_order_schedule': 'auto_order_schedule', # noqa: E501
130
133
  'merchant_item_id': 'merchant_item_id', # noqa: E501
131
134
  'options': 'options', # noqa: E501
135
+ 'properties': 'properties', # noqa: E501
132
136
  'quantity': 'quantity', # noqa: E501
133
137
  'upsell': 'upsell', # noqa: E501
134
138
  }
@@ -179,6 +183,7 @@ class ChannelPartnerOrderItem(ModelNormal):
179
183
  auto_order_schedule (str): The frequency schedule for this item if this item is part of an auto (recurring) order. [optional] # noqa: E501
180
184
  merchant_item_id (str): Item ID. [optional] # noqa: E501
181
185
  options ([ChannelPartnerOrderItemOption]): Item options. [optional] # noqa: E501
186
+ properties ([ChannelPartnerOrderItemProperty]): Properties. [optional] # noqa: E501
182
187
  quantity (float): Quantity. [optional] # noqa: E501
183
188
  upsell (bool): True if this item was an upsell item.. [optional] # noqa: E501
184
189
  """
@@ -271,6 +276,7 @@ class ChannelPartnerOrderItem(ModelNormal):
271
276
  auto_order_schedule (str): The frequency schedule for this item if this item is part of an auto (recurring) order. [optional] # noqa: E501
272
277
  merchant_item_id (str): Item ID. [optional] # noqa: E501
273
278
  options ([ChannelPartnerOrderItemOption]): Item options. [optional] # noqa: E501
279
+ properties ([ChannelPartnerOrderItemProperty]): Properties. [optional] # noqa: E501
274
280
  quantity (float): Quantity. [optional] # noqa: E501
275
281
  upsell (bool): True if this item was an upsell item.. [optional] # noqa: E501
276
282
  """
@@ -0,0 +1,282 @@
1
+ """
2
+ UltraCart Rest API V2
3
+
4
+ UltraCart REST API Version 2 # noqa: E501
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+ Contact: support@ultracart.com
8
+ Generated by: https://openapi-generator.tech
9
+ """
10
+
11
+
12
+ import re # noqa: F401
13
+ import sys # noqa: F401
14
+
15
+ from ultracart.model_utils import ( # noqa: F401
16
+ ApiTypeError,
17
+ ModelComposed,
18
+ ModelNormal,
19
+ ModelSimple,
20
+ cached_property,
21
+ change_keys_js_to_python,
22
+ convert_js_args_to_python_args,
23
+ date,
24
+ datetime,
25
+ file_type,
26
+ none_type,
27
+ validate_get_composed_info,
28
+ OpenApiModel
29
+ )
30
+ from ultracart.exceptions import ApiAttributeError
31
+
32
+
33
+
34
+ class ChannelPartnerOrderItemProperty(ModelNormal):
35
+ """NOTE: This class is auto generated by OpenAPI Generator.
36
+ Ref: https://openapi-generator.tech
37
+
38
+ Do not edit the class manually.
39
+
40
+ Attributes:
41
+ allowed_values (dict): The key is the tuple path to the attribute
42
+ and the for var_name this is (var_name,). The value is a dict
43
+ with a capitalized key describing the allowed value and an allowed
44
+ value. These dicts store the allowed enum values.
45
+ attribute_map (dict): The key is attribute name
46
+ and the value is json key in definition.
47
+ discriminator_value_class_map (dict): A dict to go from the discriminator
48
+ variable value to the discriminator class name.
49
+ validations (dict): The key is the tuple path to the attribute
50
+ and the for var_name this is (var_name,). The value is a dict
51
+ that stores validations for max_length, min_length, max_items,
52
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
53
+ inclusive_minimum, and regex.
54
+ additional_properties_type (tuple): A tuple of classes accepted
55
+ as additional properties values.
56
+ """
57
+
58
+ allowed_values = {
59
+ }
60
+
61
+ validations = {
62
+ ('name',): {
63
+ 'max_length': 100,
64
+ },
65
+ ('value',): {
66
+ 'max_length': 3800,
67
+ },
68
+ }
69
+
70
+ @cached_property
71
+ def additional_properties_type():
72
+ """
73
+ This must be a method because a model may have properties that are
74
+ of type self, this must run after the class is loaded
75
+ """
76
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
77
+
78
+ _nullable = False
79
+
80
+ @cached_property
81
+ def openapi_types():
82
+ """
83
+ This must be a method because a model may have properties that are
84
+ of type self, this must run after the class is loaded
85
+
86
+ Returns
87
+ openapi_types (dict): The key is attribute name
88
+ and the value is attribute type.
89
+ """
90
+ return {
91
+ 'display': (bool,), # noqa: E501
92
+ 'expiration_dts': (str,), # noqa: E501
93
+ 'name': (str,), # noqa: E501
94
+ 'value': (str,), # noqa: E501
95
+ }
96
+
97
+ @cached_property
98
+ def discriminator():
99
+ return None
100
+
101
+
102
+ attribute_map = {
103
+ 'display': 'display', # noqa: E501
104
+ 'expiration_dts': 'expiration_dts', # noqa: E501
105
+ 'name': 'name', # noqa: E501
106
+ 'value': 'value', # noqa: E501
107
+ }
108
+
109
+ read_only_vars = {
110
+ }
111
+
112
+ _composed_schemas = {}
113
+
114
+ @classmethod
115
+ @convert_js_args_to_python_args
116
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
117
+ """ChannelPartnerOrderItemProperty - a model defined in OpenAPI
118
+
119
+ Keyword Args:
120
+ _check_type (bool): if True, values for parameters in openapi_types
121
+ will be type checked and a TypeError will be
122
+ raised if the wrong type is input.
123
+ Defaults to True
124
+ _path_to_item (tuple/list): This is a list of keys or values to
125
+ drill down to the model in received_data
126
+ when deserializing a response
127
+ _spec_property_naming (bool): True if the variable names in the input data
128
+ are serialized names, as specified in the OpenAPI document.
129
+ False if the variable names in the input data
130
+ are pythonic names, e.g. snake case (default)
131
+ _configuration (Configuration): the instance to use when
132
+ deserializing a file_type parameter.
133
+ If passed, type conversion is attempted
134
+ If omitted no type conversion is done.
135
+ _visited_composed_classes (tuple): This stores a tuple of
136
+ classes that we have traveled through so that
137
+ if we see that class again we will not use its
138
+ discriminator again.
139
+ When traveling through a discriminator, the
140
+ composed schema that is
141
+ is traveled through is added to this set.
142
+ For example if Animal has a discriminator
143
+ petType and we pass in "Dog", and the class Dog
144
+ allOf includes Animal, we move through Animal
145
+ once using the discriminator, and pick Dog.
146
+ Then in Dog, we will make an instance of the
147
+ Animal class but this time we won't travel
148
+ through its discriminator because we passed in
149
+ _visited_composed_classes = (Animal,)
150
+ display (bool): True if this property is displayed to the customer. [optional] # noqa: E501
151
+ expiration_dts (str): The date/time that the property expires and is deleted. [optional] # noqa: E501
152
+ name (str): Name. [optional] # noqa: E501
153
+ value (str): Value. [optional] # noqa: E501
154
+ """
155
+
156
+ _check_type = kwargs.pop('_check_type', True)
157
+ _spec_property_naming = kwargs.pop('_spec_property_naming', True)
158
+ _path_to_item = kwargs.pop('_path_to_item', ())
159
+ _configuration = kwargs.pop('_configuration', None)
160
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
161
+
162
+ self = super(OpenApiModel, cls).__new__(cls)
163
+
164
+ if args:
165
+ for arg in args:
166
+ if isinstance(arg, dict):
167
+ kwargs.update(arg)
168
+ else:
169
+ raise ApiTypeError(
170
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
171
+ args,
172
+ self.__class__.__name__,
173
+ ),
174
+ path_to_item=_path_to_item,
175
+ valid_classes=(self.__class__,),
176
+ )
177
+
178
+ self._data_store = {}
179
+ self._check_type = _check_type
180
+ self._spec_property_naming = _spec_property_naming
181
+ self._path_to_item = _path_to_item
182
+ self._configuration = _configuration
183
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
184
+
185
+ for var_name, var_value in kwargs.items():
186
+ if var_name not in self.attribute_map and \
187
+ self._configuration is not None and \
188
+ self._configuration.discard_unknown_keys and \
189
+ self.additional_properties_type is None:
190
+ # discard variable.
191
+ continue
192
+ setattr(self, var_name, var_value)
193
+ return self
194
+
195
+ required_properties = set([
196
+ '_data_store',
197
+ '_check_type',
198
+ '_spec_property_naming',
199
+ '_path_to_item',
200
+ '_configuration',
201
+ '_visited_composed_classes',
202
+ ])
203
+
204
+ @convert_js_args_to_python_args
205
+ def __init__(self, *args, **kwargs): # noqa: E501
206
+ """ChannelPartnerOrderItemProperty - a model defined in OpenAPI
207
+
208
+ Keyword Args:
209
+ _check_type (bool): if True, values for parameters in openapi_types
210
+ will be type checked and a TypeError will be
211
+ raised if the wrong type is input.
212
+ Defaults to True
213
+ _path_to_item (tuple/list): This is a list of keys or values to
214
+ drill down to the model in received_data
215
+ when deserializing a response
216
+ _spec_property_naming (bool): True if the variable names in the input data
217
+ are serialized names, as specified in the OpenAPI document.
218
+ False if the variable names in the input data
219
+ are pythonic names, e.g. snake case (default)
220
+ _configuration (Configuration): the instance to use when
221
+ deserializing a file_type parameter.
222
+ If passed, type conversion is attempted
223
+ If omitted no type conversion is done.
224
+ _visited_composed_classes (tuple): This stores a tuple of
225
+ classes that we have traveled through so that
226
+ if we see that class again we will not use its
227
+ discriminator again.
228
+ When traveling through a discriminator, the
229
+ composed schema that is
230
+ is traveled through is added to this set.
231
+ For example if Animal has a discriminator
232
+ petType and we pass in "Dog", and the class Dog
233
+ allOf includes Animal, we move through Animal
234
+ once using the discriminator, and pick Dog.
235
+ Then in Dog, we will make an instance of the
236
+ Animal class but this time we won't travel
237
+ through its discriminator because we passed in
238
+ _visited_composed_classes = (Animal,)
239
+ display (bool): True if this property is displayed to the customer. [optional] # noqa: E501
240
+ expiration_dts (str): The date/time that the property expires and is deleted. [optional] # noqa: E501
241
+ name (str): Name. [optional] # noqa: E501
242
+ value (str): Value. [optional] # noqa: E501
243
+ """
244
+
245
+ _check_type = kwargs.pop('_check_type', True)
246
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
247
+ _path_to_item = kwargs.pop('_path_to_item', ())
248
+ _configuration = kwargs.pop('_configuration', None)
249
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
250
+
251
+ if args:
252
+ for arg in args:
253
+ if isinstance(arg, dict):
254
+ kwargs.update(arg)
255
+ else:
256
+ raise ApiTypeError(
257
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
258
+ args,
259
+ self.__class__.__name__,
260
+ ),
261
+ path_to_item=_path_to_item,
262
+ valid_classes=(self.__class__,),
263
+ )
264
+
265
+ self._data_store = {}
266
+ self._check_type = _check_type
267
+ self._spec_property_naming = _spec_property_naming
268
+ self._path_to_item = _path_to_item
269
+ self._configuration = _configuration
270
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
271
+
272
+ for var_name, var_value in kwargs.items():
273
+ if var_name not in self.attribute_map and \
274
+ self._configuration is not None and \
275
+ self._configuration.discard_unknown_keys and \
276
+ self.additional_properties_type is None:
277
+ # discard variable.
278
+ continue
279
+ setattr(self, var_name, var_value)
280
+ if var_name in self.read_only_vars:
281
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
282
+ f"class with read only attributes.")
@@ -87,6 +87,10 @@ class ConversationAgentProfile(ModelNormal):
87
87
  and the value is attribute type.
88
88
  """
89
89
  return {
90
+ 'ai': (bool,), # noqa: E501
91
+ 'ai_chat_instructions': (str,), # noqa: E501
92
+ 'ai_persona': (str,), # noqa: E501
93
+ 'ai_sms_instructions': (str,), # noqa: E501
90
94
  'chat_limit': (int,), # noqa: E501
91
95
  'default_language_iso_code': (str,), # noqa: E501
92
96
  'default_status': (str,), # noqa: E501
@@ -102,6 +106,10 @@ class ConversationAgentProfile(ModelNormal):
102
106
 
103
107
 
104
108
  attribute_map = {
109
+ 'ai': 'ai', # noqa: E501
110
+ 'ai_chat_instructions': 'ai_chat_instructions', # noqa: E501
111
+ 'ai_persona': 'ai_persona', # noqa: E501
112
+ 'ai_sms_instructions': 'ai_sms_instructions', # noqa: E501
105
113
  'chat_limit': 'chat_limit', # noqa: E501
106
114
  'default_language_iso_code': 'default_language_iso_code', # noqa: E501
107
115
  'default_status': 'default_status', # noqa: E501
@@ -152,6 +160,10 @@ class ConversationAgentProfile(ModelNormal):
152
160
  Animal class but this time we won't travel
153
161
  through its discriminator because we passed in
154
162
  _visited_composed_classes = (Animal,)
163
+ ai (bool): AI powered chat bot. [optional] # noqa: E501
164
+ ai_chat_instructions (str): Additional instructions for this AI when handle web chats. [optional] # noqa: E501
165
+ ai_persona (str): Persona of this AI agent. [optional] # noqa: E501
166
+ ai_sms_instructions (str): Additional instructions for this AI when handle SMS messages. [optional] # noqa: E501
155
167
  chat_limit (int): The number of engagement chats that can be pushed on them at any given time.. [optional] # noqa: E501
156
168
  default_language_iso_code (str): The default language the agent is chatting in. [optional] # noqa: E501
157
169
  default_status (str): Default status when the agent loads conversations app.. [optional] # noqa: E501
@@ -244,6 +256,10 @@ class ConversationAgentProfile(ModelNormal):
244
256
  Animal class but this time we won't travel
245
257
  through its discriminator because we passed in
246
258
  _visited_composed_classes = (Animal,)
259
+ ai (bool): AI powered chat bot. [optional] # noqa: E501
260
+ ai_chat_instructions (str): Additional instructions for this AI when handle web chats. [optional] # noqa: E501
261
+ ai_persona (str): Persona of this AI agent. [optional] # noqa: E501
262
+ ai_sms_instructions (str): Additional instructions for this AI when handle SMS messages. [optional] # noqa: E501
247
263
  chat_limit (int): The number of engagement chats that can be pushed on them at any given time.. [optional] # noqa: E501
248
264
  default_language_iso_code (str): The default language the agent is chatting in. [optional] # noqa: E501
249
265
  default_status (str): Default status when the agent loads conversations app.. [optional] # noqa: E501
@@ -120,6 +120,7 @@ from ultracart.model.channel_partner_import_response import ChannelPartnerImport
120
120
  from ultracart.model.channel_partner_order import ChannelPartnerOrder
121
121
  from ultracart.model.channel_partner_order_item import ChannelPartnerOrderItem
122
122
  from ultracart.model.channel_partner_order_item_option import ChannelPartnerOrderItemOption
123
+ from ultracart.model.channel_partner_order_item_property import ChannelPartnerOrderItemProperty
123
124
  from ultracart.model.channel_partner_order_transaction import ChannelPartnerOrderTransaction
124
125
  from ultracart.model.channel_partner_order_transaction_detail import ChannelPartnerOrderTransactionDetail
125
126
  from ultracart.model.channel_partner_ship_to_preference import ChannelPartnerShipToPreference
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultracart-rest-sdk
3
- Version: 4.1.5
3
+ Version: 4.1.7
4
4
  Summary: UltraCart Rest API V2
5
5
  Home-page: UNKNOWN
6
6
  Author: UltraCart Support
@@ -1,6 +1,6 @@
1
- ultracart/__init__.py,sha256=kzdBjXkfR0TU8wOiRWXiGhBk-xxH2-OLjz4DfieUKFM,697
2
- ultracart/api_client.py,sha256=-g_PYogzv5UYZmF9zE6NKT4ZX1Je_V2kSED7vvNH4V8,39070
3
- ultracart/configuration.py,sha256=MIiwjBM8LiIQAkNE-KR_JL8iCMMSro4myjfXOyy9EZU,17840
1
+ ultracart/__init__.py,sha256=3fTe9QT-N7lIpRrGFu4ySkgrlKKBZHzSpriCR_gFIL8,697
2
+ ultracart/api_client.py,sha256=h6cdfVLGdzxGIt-DLBqMbtqZXOMUiOV-7BqnJycUx_I,39070
3
+ ultracart/configuration.py,sha256=YOhQl9_LqsNm57oi7QtCsQt5uflaN2SO25gOwKxn6Qc,17840
4
4
  ultracart/exceptions.py,sha256=dwRtrWJsW4H_jKk3B1w2chykcQ7E2FSlhftUByD9e9E,5069
5
5
  ultracart/model_utils.py,sha256=X_RAfA-TlvDKBICnIve7PPVDM34Nl58aV1bqCrVmoTo,82574
6
6
  ultracart/rest.py,sha256=2lM6zwrjGp_SjkddamoKdpk3jFuc8Ow7fKIXRdKNp24,14268
@@ -19,7 +19,7 @@ ultracart/api/gift_certificate_api.py,sha256=2TkzQhqCMcPf8Ro14eRycy0LtPxfC7n67GS
19
19
  ultracart/api/integration_log_api.py,sha256=t8spQtDERkGKISq7JtDNkA1MsQXp8qV8lSuXIhy0lEc,30164
20
20
  ultracart/api/item_api.py,sha256=Mig0efruQ_KXKqqATbQAYmynq_Rwj1FcejQd_iq8mlc,134676
21
21
  ultracart/api/oauth_api.py,sha256=ZgwVvUNQybiol1gdS8OjQY60ElUsEPmtFgSSb5Ys5SI,13633
22
- ultracart/api/order_api.py,sha256=TYIegMclGmOjWZ4-TeJghPWZDa0pyUYJ8eu1oUkcAJI,161411
22
+ ultracart/api/order_api.py,sha256=raD-2d94gwpZJ2MBM9ALdk9gzeSFYlH2lZRduD5ddV0,169868
23
23
  ultracart/api/sso_api.py,sha256=Ct9oau71nCUKecojo_1kkXRcIqPxhlVZiST2bdjLJJ8,21632
24
24
  ultracart/api/storefront_api.py,sha256=tItFugj94AYHHfGJLbhMlMkErGP1ItZoiOeqtdRafGw,1017735
25
25
  ultracart/api/tax_api.py,sha256=aQZaRsIXlFNDPwXYAykApv3KaAGfV-ZHB6QPBbEK-P0,148671
@@ -137,8 +137,9 @@ ultracart/model/channel_partner_estimate_shipping_response.py,sha256=Y1mG1FK9UEo
137
137
  ultracart/model/channel_partner_estimate_tax_response.py,sha256=deJ8MMWfw9UjYXqyBFRiC6WYQKF4JnqAkzLK5MfEd6U,12744
138
138
  ultracart/model/channel_partner_import_response.py,sha256=Oyt0Q-5zzTKQkOl8e2YtdruLR-TWJWPymKW0vYwEoI4,13430
139
139
  ultracart/model/channel_partner_order.py,sha256=U2K09XPQoMLWSrTzylyWEolCURTOSIy375ZgY838v7k,46365
140
- ultracart/model/channel_partner_order_item.py,sha256=-eCTLRsgWqO4-uLB6pTZrxWCFTd3b_roQQSuhbrBqkw,14644
140
+ ultracart/model/channel_partner_order_item.py,sha256=EkdeCTkLNhjcjB906cTGsRZ4XR1ks-FDoXxifegq7xA,15149
141
141
  ultracart/model/channel_partner_order_item_option.py,sha256=PXlQNBEXO00Ef4I7TE_yFAYfogbH-3sef5YleCruBnk,11741
142
+ ultracart/model/channel_partner_order_item_property.py,sha256=MjyLLfwMFAosW9B3Q2Csg17rLV7YGZjdqpFcoMNRekY,12419
142
143
  ultracart/model/channel_partner_order_transaction.py,sha256=iJc9N5cr57Od203rNJYf3u9ZTqmR5ZQb-uutw4S3pQE,12195
143
144
  ultracart/model/channel_partner_order_transaction_detail.py,sha256=b5kiWcWGDS1eKh1W1b3zBUwJD0sFArGdFcAvn2fcZJc,11762
144
145
  ultracart/model/channel_partner_ship_to_preference.py,sha256=DZzwPsd-zcg4lT0c4mWLJSMgR98oi8V92iDxaoHrWbI,13952
@@ -159,7 +160,7 @@ ultracart/model/city_state_zip.py,sha256=goGnlh4nzcsV1p8iNeFm4y6LP2TrtHIVjBPrHCD
159
160
  ultracart/model/conversation.py,sha256=GzwEq5ZCV02WfWPE7zyJvbZz-MX1KIdBxij-zelOfYc,17213
160
161
  ultracart/model/conversation_agent_auth.py,sha256=OKvY61hG-vpVOtSzVOqXeBy-b5feJuglN53Ovcl0Co0,15038
161
162
  ultracart/model/conversation_agent_auth_response.py,sha256=boVaC_JNOUGPlmxX2E-QdQWFLAJMS8GC4OWMRYaCjNM,12906
162
- ultracart/model/conversation_agent_profile.py,sha256=vqIOHdbPLr3tgNMwe_Ufx_disp3Q_80aOStSZSXwAEQ,13813
163
+ ultracart/model/conversation_agent_profile.py,sha256=5iVdmQ9Sx_D0LkO4LO4PblUuQq2uAXpKog247rPFJJg,15039
163
164
  ultracart/model/conversation_agent_profile_response.py,sha256=vlWWfOZOgHoUuA74xY23jQ9bk4yBZkBbhFWAKiv1mq0,12951
164
165
  ultracart/model/conversation_autocomplete_request.py,sha256=OjTA7kT3wMyv8E63wwoxai_E5baFIWerzWOl-xn2RB8,11625
165
166
  ultracart/model/conversation_autocomplete_response.py,sha256=6SJ3yMnmCdVtQfSkmVfrNRoTEWi1ywIzOOswFSMGIZQ,13323
@@ -884,9 +885,9 @@ ultracart/model/workflow_tasks_response.py,sha256=KmHe72xKnZiS9CemBr5hluY5EsU9_x
884
885
  ultracart/model/workflow_user.py,sha256=gkQIeMSIhawpz5wtpTJ8Lof_Td0IrwG0KZF6catE41k,11903
885
886
  ultracart/model/workflow_user_response.py,sha256=TKfMu5vF1fXlV8mvxRFhvk6WNdGce2T8a4vFycQvuhQ,12785
886
887
  ultracart/model/workflow_users_response.py,sha256=3Y7L1oHc2-HOvl1pDdcnl9xHKYLGblKpKdbkPBh2u68,13059
887
- ultracart/models/__init__.py,sha256=Y4LS2AerNErGWtZ82AFBjaQMJ25Zt10dy7UbxzyjlkI,66008
888
- ultracart_rest_sdk-4.1.5.dist-info/LICENSE,sha256=4DukHX-rIHAHaf5BGLq1DYAMt0-ZA1OgXS9f_xwig2M,11558
889
- ultracart_rest_sdk-4.1.5.dist-info/METADATA,sha256=Zy2CvPnniTn7IFpAV6QuH_vVJwdkf9mgRUYVnB_FOEY,401
890
- ultracart_rest_sdk-4.1.5.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
891
- ultracart_rest_sdk-4.1.5.dist-info/top_level.txt,sha256=90IoRqV6KX58jTyx9MwEBqh4j38_10hWrrvqsmXWZYo,10
892
- ultracart_rest_sdk-4.1.5.dist-info/RECORD,,
888
+ ultracart/models/__init__.py,sha256=wAZZhiqX114o5CigFRt6h0F3xqGgBhuAJWasT4khLgM,66104
889
+ ultracart_rest_sdk-4.1.7.dist-info/LICENSE,sha256=4DukHX-rIHAHaf5BGLq1DYAMt0-ZA1OgXS9f_xwig2M,11558
890
+ ultracart_rest_sdk-4.1.7.dist-info/METADATA,sha256=wNtDuhTGqwogfB6GFkLXMIerJWgd49DeQ2DmVWuCqtA,401
891
+ ultracart_rest_sdk-4.1.7.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
892
+ ultracart_rest_sdk-4.1.7.dist-info/top_level.txt,sha256=90IoRqV6KX58jTyx9MwEBqh4j38_10hWrrvqsmXWZYo,10
893
+ ultracart_rest_sdk-4.1.7.dist-info/RECORD,,