ultracart-rest-sdk 4.1.27__py3-none-any.whl → 4.1.39__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.
- ultracart/__init__.py +1 -1
- ultracart/api/conversation_api.py +945 -69
- ultracart/api/customer_api.py +171 -0
- ultracart/api/item_api.py +452 -0
- ultracart/api/order_api.py +153 -0
- ultracart/api_client.py +1 -1
- ultracart/configuration.py +1 -1
- ultracart/model/conversation_agent_auth.py +4 -0
- ultracart/model/conversation_agent_profile.py +22 -0
- ultracart/model/conversation_mcp_server.py +297 -0
- ultracart/model/conversation_mcp_server_response.py +292 -0
- ultracart/model/conversation_mcp_server_tools_response.py +290 -0
- ultracart/model/conversation_mcp_servers_response.py +292 -0
- ultracart/model/conversation_message.py +4 -0
- ultracart/model/conversation_pbx_agent.py +4 -0
- ultracart/model/conversation_pbx_queue.py +13 -0
- ultracart/model/conversation_virtual_agent_capabilities.py +4 -0
- ultracart/model/coupon_free_item_with_item_purchase_and_free_shipping.py +4 -0
- ultracart/model/coupon_percent_off_items_and_free_shipping.py +4 -0
- ultracart/model/customer_query.py +8 -0
- ultracart/model/email_commseq_email.py +12 -0
- ultracart/model/item_inventory_update.py +272 -0
- ultracart/model/item_inventory_update_request.py +270 -0
- ultracart/model/item_related_item.py +2 -0
- ultracart/model/item_shipping.py +4 -0
- ultracart/model/item_shipping_distribution_center_response.py +292 -0
- ultracart/model/order_assign_to_affiliate_request.py +275 -0
- ultracart/models/__init__.py +8 -0
- {ultracart_rest_sdk-4.1.27.dist-info → ultracart_rest_sdk-4.1.39.dist-info}/METADATA +1 -1
- {ultracart_rest_sdk-4.1.27.dist-info → ultracart_rest_sdk-4.1.39.dist-info}/RECORD +33 -25
- {ultracart_rest_sdk-4.1.27.dist-info → ultracart_rest_sdk-4.1.39.dist-info}/LICENSE +0 -0
- {ultracart_rest_sdk-4.1.27.dist-info → ultracart_rest_sdk-4.1.39.dist-info}/WHEEL +0 -0
- {ultracart_rest_sdk-4.1.27.dist-info → ultracart_rest_sdk-4.1.39.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,292 @@
|
|
|
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
|
+
def lazy_import():
|
|
34
|
+
from ultracart.model.conversation_mcp_server import ConversationMcpServer
|
|
35
|
+
from ultracart.model.error import Error
|
|
36
|
+
from ultracart.model.response_metadata import ResponseMetadata
|
|
37
|
+
from ultracart.model.warning import Warning
|
|
38
|
+
globals()['ConversationMcpServer'] = ConversationMcpServer
|
|
39
|
+
globals()['Error'] = Error
|
|
40
|
+
globals()['ResponseMetadata'] = ResponseMetadata
|
|
41
|
+
globals()['Warning'] = Warning
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class ConversationMcpServersResponse(ModelNormal):
|
|
45
|
+
"""NOTE: This class is auto generated by OpenAPI Generator.
|
|
46
|
+
Ref: https://openapi-generator.tech
|
|
47
|
+
|
|
48
|
+
Do not edit the class manually.
|
|
49
|
+
|
|
50
|
+
Attributes:
|
|
51
|
+
allowed_values (dict): The key is the tuple path to the attribute
|
|
52
|
+
and the for var_name this is (var_name,). The value is a dict
|
|
53
|
+
with a capitalized key describing the allowed value and an allowed
|
|
54
|
+
value. These dicts store the allowed enum values.
|
|
55
|
+
attribute_map (dict): The key is attribute name
|
|
56
|
+
and the value is json key in definition.
|
|
57
|
+
discriminator_value_class_map (dict): A dict to go from the discriminator
|
|
58
|
+
variable value to the discriminator class name.
|
|
59
|
+
validations (dict): The key is the tuple path to the attribute
|
|
60
|
+
and the for var_name this is (var_name,). The value is a dict
|
|
61
|
+
that stores validations for max_length, min_length, max_items,
|
|
62
|
+
min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
|
|
63
|
+
inclusive_minimum, and regex.
|
|
64
|
+
additional_properties_type (tuple): A tuple of classes accepted
|
|
65
|
+
as additional properties values.
|
|
66
|
+
"""
|
|
67
|
+
|
|
68
|
+
allowed_values = {
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
validations = {
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
@cached_property
|
|
75
|
+
def additional_properties_type():
|
|
76
|
+
"""
|
|
77
|
+
This must be a method because a model may have properties that are
|
|
78
|
+
of type self, this must run after the class is loaded
|
|
79
|
+
"""
|
|
80
|
+
lazy_import()
|
|
81
|
+
return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
|
|
82
|
+
|
|
83
|
+
_nullable = False
|
|
84
|
+
|
|
85
|
+
@cached_property
|
|
86
|
+
def openapi_types():
|
|
87
|
+
"""
|
|
88
|
+
This must be a method because a model may have properties that are
|
|
89
|
+
of type self, this must run after the class is loaded
|
|
90
|
+
|
|
91
|
+
Returns
|
|
92
|
+
openapi_types (dict): The key is attribute name
|
|
93
|
+
and the value is attribute type.
|
|
94
|
+
"""
|
|
95
|
+
lazy_import()
|
|
96
|
+
return {
|
|
97
|
+
'error': (Error,), # noqa: E501
|
|
98
|
+
'mcp_servers': ([ConversationMcpServer],), # noqa: E501
|
|
99
|
+
'metadata': (ResponseMetadata,), # noqa: E501
|
|
100
|
+
'success': (bool,), # noqa: E501
|
|
101
|
+
'warning': (Warning,), # noqa: E501
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@cached_property
|
|
105
|
+
def discriminator():
|
|
106
|
+
return None
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
attribute_map = {
|
|
110
|
+
'error': 'error', # noqa: E501
|
|
111
|
+
'mcp_servers': 'mcp_servers', # noqa: E501
|
|
112
|
+
'metadata': 'metadata', # noqa: E501
|
|
113
|
+
'success': 'success', # noqa: E501
|
|
114
|
+
'warning': 'warning', # noqa: E501
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
read_only_vars = {
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
_composed_schemas = {}
|
|
121
|
+
|
|
122
|
+
@classmethod
|
|
123
|
+
@convert_js_args_to_python_args
|
|
124
|
+
def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
|
|
125
|
+
"""ConversationMcpServersResponse - a model defined in OpenAPI
|
|
126
|
+
|
|
127
|
+
Keyword Args:
|
|
128
|
+
_check_type (bool): if True, values for parameters in openapi_types
|
|
129
|
+
will be type checked and a TypeError will be
|
|
130
|
+
raised if the wrong type is input.
|
|
131
|
+
Defaults to True
|
|
132
|
+
_path_to_item (tuple/list): This is a list of keys or values to
|
|
133
|
+
drill down to the model in received_data
|
|
134
|
+
when deserializing a response
|
|
135
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
136
|
+
are serialized names, as specified in the OpenAPI document.
|
|
137
|
+
False if the variable names in the input data
|
|
138
|
+
are pythonic names, e.g. snake case (default)
|
|
139
|
+
_configuration (Configuration): the instance to use when
|
|
140
|
+
deserializing a file_type parameter.
|
|
141
|
+
If passed, type conversion is attempted
|
|
142
|
+
If omitted no type conversion is done.
|
|
143
|
+
_visited_composed_classes (tuple): This stores a tuple of
|
|
144
|
+
classes that we have traveled through so that
|
|
145
|
+
if we see that class again we will not use its
|
|
146
|
+
discriminator again.
|
|
147
|
+
When traveling through a discriminator, the
|
|
148
|
+
composed schema that is
|
|
149
|
+
is traveled through is added to this set.
|
|
150
|
+
For example if Animal has a discriminator
|
|
151
|
+
petType and we pass in "Dog", and the class Dog
|
|
152
|
+
allOf includes Animal, we move through Animal
|
|
153
|
+
once using the discriminator, and pick Dog.
|
|
154
|
+
Then in Dog, we will make an instance of the
|
|
155
|
+
Animal class but this time we won't travel
|
|
156
|
+
through its discriminator because we passed in
|
|
157
|
+
_visited_composed_classes = (Animal,)
|
|
158
|
+
error (Error): [optional] # noqa: E501
|
|
159
|
+
mcp_servers ([ConversationMcpServer]): [optional] # noqa: E501
|
|
160
|
+
metadata (ResponseMetadata): [optional] # noqa: E501
|
|
161
|
+
success (bool): Indicates if API call was successful. [optional] # noqa: E501
|
|
162
|
+
warning (Warning): [optional] # noqa: E501
|
|
163
|
+
"""
|
|
164
|
+
|
|
165
|
+
_check_type = kwargs.pop('_check_type', True)
|
|
166
|
+
_spec_property_naming = kwargs.pop('_spec_property_naming', True)
|
|
167
|
+
_path_to_item = kwargs.pop('_path_to_item', ())
|
|
168
|
+
_configuration = kwargs.pop('_configuration', None)
|
|
169
|
+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
|
170
|
+
|
|
171
|
+
self = super(OpenApiModel, cls).__new__(cls)
|
|
172
|
+
|
|
173
|
+
if args:
|
|
174
|
+
for arg in args:
|
|
175
|
+
if isinstance(arg, dict):
|
|
176
|
+
kwargs.update(arg)
|
|
177
|
+
else:
|
|
178
|
+
raise ApiTypeError(
|
|
179
|
+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
|
180
|
+
args,
|
|
181
|
+
self.__class__.__name__,
|
|
182
|
+
),
|
|
183
|
+
path_to_item=_path_to_item,
|
|
184
|
+
valid_classes=(self.__class__,),
|
|
185
|
+
)
|
|
186
|
+
|
|
187
|
+
self._data_store = {}
|
|
188
|
+
self._check_type = _check_type
|
|
189
|
+
self._spec_property_naming = _spec_property_naming
|
|
190
|
+
self._path_to_item = _path_to_item
|
|
191
|
+
self._configuration = _configuration
|
|
192
|
+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
|
193
|
+
|
|
194
|
+
for var_name, var_value in kwargs.items():
|
|
195
|
+
if var_name not in self.attribute_map and \
|
|
196
|
+
self._configuration is not None and \
|
|
197
|
+
self._configuration.discard_unknown_keys and \
|
|
198
|
+
self.additional_properties_type is None:
|
|
199
|
+
# discard variable.
|
|
200
|
+
continue
|
|
201
|
+
setattr(self, var_name, var_value)
|
|
202
|
+
return self
|
|
203
|
+
|
|
204
|
+
required_properties = set([
|
|
205
|
+
'_data_store',
|
|
206
|
+
'_check_type',
|
|
207
|
+
'_spec_property_naming',
|
|
208
|
+
'_path_to_item',
|
|
209
|
+
'_configuration',
|
|
210
|
+
'_visited_composed_classes',
|
|
211
|
+
])
|
|
212
|
+
|
|
213
|
+
@convert_js_args_to_python_args
|
|
214
|
+
def __init__(self, *args, **kwargs): # noqa: E501
|
|
215
|
+
"""ConversationMcpServersResponse - a model defined in OpenAPI
|
|
216
|
+
|
|
217
|
+
Keyword Args:
|
|
218
|
+
_check_type (bool): if True, values for parameters in openapi_types
|
|
219
|
+
will be type checked and a TypeError will be
|
|
220
|
+
raised if the wrong type is input.
|
|
221
|
+
Defaults to True
|
|
222
|
+
_path_to_item (tuple/list): This is a list of keys or values to
|
|
223
|
+
drill down to the model in received_data
|
|
224
|
+
when deserializing a response
|
|
225
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
226
|
+
are serialized names, as specified in the OpenAPI document.
|
|
227
|
+
False if the variable names in the input data
|
|
228
|
+
are pythonic names, e.g. snake case (default)
|
|
229
|
+
_configuration (Configuration): the instance to use when
|
|
230
|
+
deserializing a file_type parameter.
|
|
231
|
+
If passed, type conversion is attempted
|
|
232
|
+
If omitted no type conversion is done.
|
|
233
|
+
_visited_composed_classes (tuple): This stores a tuple of
|
|
234
|
+
classes that we have traveled through so that
|
|
235
|
+
if we see that class again we will not use its
|
|
236
|
+
discriminator again.
|
|
237
|
+
When traveling through a discriminator, the
|
|
238
|
+
composed schema that is
|
|
239
|
+
is traveled through is added to this set.
|
|
240
|
+
For example if Animal has a discriminator
|
|
241
|
+
petType and we pass in "Dog", and the class Dog
|
|
242
|
+
allOf includes Animal, we move through Animal
|
|
243
|
+
once using the discriminator, and pick Dog.
|
|
244
|
+
Then in Dog, we will make an instance of the
|
|
245
|
+
Animal class but this time we won't travel
|
|
246
|
+
through its discriminator because we passed in
|
|
247
|
+
_visited_composed_classes = (Animal,)
|
|
248
|
+
error (Error): [optional] # noqa: E501
|
|
249
|
+
mcp_servers ([ConversationMcpServer]): [optional] # noqa: E501
|
|
250
|
+
metadata (ResponseMetadata): [optional] # noqa: E501
|
|
251
|
+
success (bool): Indicates if API call was successful. [optional] # noqa: E501
|
|
252
|
+
warning (Warning): [optional] # noqa: E501
|
|
253
|
+
"""
|
|
254
|
+
|
|
255
|
+
_check_type = kwargs.pop('_check_type', True)
|
|
256
|
+
_spec_property_naming = kwargs.pop('_spec_property_naming', False)
|
|
257
|
+
_path_to_item = kwargs.pop('_path_to_item', ())
|
|
258
|
+
_configuration = kwargs.pop('_configuration', None)
|
|
259
|
+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
|
260
|
+
|
|
261
|
+
if args:
|
|
262
|
+
for arg in args:
|
|
263
|
+
if isinstance(arg, dict):
|
|
264
|
+
kwargs.update(arg)
|
|
265
|
+
else:
|
|
266
|
+
raise ApiTypeError(
|
|
267
|
+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
|
268
|
+
args,
|
|
269
|
+
self.__class__.__name__,
|
|
270
|
+
),
|
|
271
|
+
path_to_item=_path_to_item,
|
|
272
|
+
valid_classes=(self.__class__,),
|
|
273
|
+
)
|
|
274
|
+
|
|
275
|
+
self._data_store = {}
|
|
276
|
+
self._check_type = _check_type
|
|
277
|
+
self._spec_property_naming = _spec_property_naming
|
|
278
|
+
self._path_to_item = _path_to_item
|
|
279
|
+
self._configuration = _configuration
|
|
280
|
+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
|
281
|
+
|
|
282
|
+
for var_name, var_value in kwargs.items():
|
|
283
|
+
if var_name not in self.attribute_map and \
|
|
284
|
+
self._configuration is not None and \
|
|
285
|
+
self._configuration.discard_unknown_keys and \
|
|
286
|
+
self.additional_properties_type is None:
|
|
287
|
+
# discard variable.
|
|
288
|
+
continue
|
|
289
|
+
setattr(self, var_name, var_value)
|
|
290
|
+
if var_name in self.read_only_vars:
|
|
291
|
+
raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
|
|
292
|
+
f"class with read only attributes.")
|
|
@@ -106,6 +106,7 @@ class ConversationMessage(ModelNormal):
|
|
|
106
106
|
'merchant_id': (str,), # noqa: E501
|
|
107
107
|
'message_dts': (str,), # noqa: E501
|
|
108
108
|
'message_epoch': (int,), # noqa: E501
|
|
109
|
+
'message_type': (str,), # noqa: E501
|
|
109
110
|
'translations': ([ConversationMessageTranslation],), # noqa: E501
|
|
110
111
|
'transport_statuses': ([ConversationMessageTransportStatus],), # noqa: E501
|
|
111
112
|
'type': (str,), # noqa: E501
|
|
@@ -129,6 +130,7 @@ class ConversationMessage(ModelNormal):
|
|
|
129
130
|
'merchant_id': 'merchant_id', # noqa: E501
|
|
130
131
|
'message_dts': 'message_dts', # noqa: E501
|
|
131
132
|
'message_epoch': 'message_epoch', # noqa: E501
|
|
133
|
+
'message_type': 'message_type', # noqa: E501
|
|
132
134
|
'translations': 'translations', # noqa: E501
|
|
133
135
|
'transport_statuses': 'transport_statuses', # noqa: E501
|
|
134
136
|
'type': 'type', # noqa: E501
|
|
@@ -187,6 +189,7 @@ class ConversationMessage(ModelNormal):
|
|
|
187
189
|
merchant_id (str): [optional] # noqa: E501
|
|
188
190
|
message_dts (str): Message date/time. [optional] # noqa: E501
|
|
189
191
|
message_epoch (int): Message epoch milliseconds. [optional] # noqa: E501
|
|
192
|
+
message_type (str): [optional] # noqa: E501
|
|
190
193
|
translations ([ConversationMessageTranslation]): [optional] # noqa: E501
|
|
191
194
|
transport_statuses ([ConversationMessageTransportStatus]): [optional] # noqa: E501
|
|
192
195
|
type (str): Message type. [optional] # noqa: E501
|
|
@@ -287,6 +290,7 @@ class ConversationMessage(ModelNormal):
|
|
|
287
290
|
merchant_id (str): [optional] # noqa: E501
|
|
288
291
|
message_dts (str): Message date/time. [optional] # noqa: E501
|
|
289
292
|
message_epoch (int): Message epoch milliseconds. [optional] # noqa: E501
|
|
293
|
+
message_type (str): [optional] # noqa: E501
|
|
290
294
|
translations ([ConversationMessageTranslation]): [optional] # noqa: E501
|
|
291
295
|
transport_statuses ([ConversationMessageTransportStatus]): [optional] # noqa: E501
|
|
292
296
|
type (str): Message type. [optional] # noqa: E501
|
|
@@ -103,6 +103,7 @@ class ConversationPbxAgent(ModelNormal):
|
|
|
103
103
|
and the value is attribute type.
|
|
104
104
|
"""
|
|
105
105
|
return {
|
|
106
|
+
'ai': (bool,), # noqa: E501
|
|
106
107
|
'cellphone': (str,), # noqa: E501
|
|
107
108
|
'conversation_pbx_agent_uuid': (str,), # noqa: E501
|
|
108
109
|
'extension': (int,), # noqa: E501
|
|
@@ -127,6 +128,7 @@ class ConversationPbxAgent(ModelNormal):
|
|
|
127
128
|
|
|
128
129
|
|
|
129
130
|
attribute_map = {
|
|
131
|
+
'ai': 'ai', # noqa: E501
|
|
130
132
|
'cellphone': 'cellphone', # noqa: E501
|
|
131
133
|
'conversation_pbx_agent_uuid': 'conversation_pbx_agent_uuid', # noqa: E501
|
|
132
134
|
'extension': 'extension', # noqa: E501
|
|
@@ -186,6 +188,7 @@ class ConversationPbxAgent(ModelNormal):
|
|
|
186
188
|
Animal class but this time we won't travel
|
|
187
189
|
through its discriminator because we passed in
|
|
188
190
|
_visited_composed_classes = (Animal,)
|
|
191
|
+
ai (bool): Flag to indicate if the agent is AI. [optional] # noqa: E501
|
|
189
192
|
cellphone (str): Cellphone number of agent in E.164 format. [optional] # noqa: E501
|
|
190
193
|
conversation_pbx_agent_uuid (str): Conversation Pbx Agent unique identifier. [optional] # noqa: E501
|
|
191
194
|
extension (int): Extension. [optional] # noqa: E501
|
|
@@ -287,6 +290,7 @@ class ConversationPbxAgent(ModelNormal):
|
|
|
287
290
|
Animal class but this time we won't travel
|
|
288
291
|
through its discriminator because we passed in
|
|
289
292
|
_visited_composed_classes = (Animal,)
|
|
293
|
+
ai (bool): Flag to indicate if the agent is AI. [optional] # noqa: E501
|
|
290
294
|
cellphone (str): Cellphone number of agent in E.164 format. [optional] # noqa: E501
|
|
291
295
|
conversation_pbx_agent_uuid (str): Conversation Pbx Agent unique identifier. [optional] # noqa: E501
|
|
292
296
|
extension (int): Extension. [optional] # noqa: E501
|
|
@@ -60,6 +60,11 @@ class ConversationPbxQueue(ModelNormal):
|
|
|
60
60
|
"""
|
|
61
61
|
|
|
62
62
|
allowed_values = {
|
|
63
|
+
('ai_priority',): {
|
|
64
|
+
'NEUTRAL': "neutral",
|
|
65
|
+
'FIRST': "first",
|
|
66
|
+
'BACKUP': "backup",
|
|
67
|
+
},
|
|
63
68
|
}
|
|
64
69
|
|
|
65
70
|
validations = {
|
|
@@ -118,6 +123,8 @@ class ConversationPbxQueue(ModelNormal):
|
|
|
118
123
|
"""
|
|
119
124
|
lazy_import()
|
|
120
125
|
return {
|
|
126
|
+
'ai_priority': (str,), # noqa: E501
|
|
127
|
+
'ai_timeout_seconds': (int,), # noqa: E501
|
|
121
128
|
'announce_queue_position': (bool,), # noqa: E501
|
|
122
129
|
'conversation_pbx_queue_uuid': (str,), # noqa: E501
|
|
123
130
|
'conversation_voicemail_mailbox_uuid': (str,), # noqa: E501
|
|
@@ -147,6 +154,8 @@ class ConversationPbxQueue(ModelNormal):
|
|
|
147
154
|
|
|
148
155
|
|
|
149
156
|
attribute_map = {
|
|
157
|
+
'ai_priority': 'ai_priority', # noqa: E501
|
|
158
|
+
'ai_timeout_seconds': 'ai_timeout_seconds', # noqa: E501
|
|
150
159
|
'announce_queue_position': 'announce_queue_position', # noqa: E501
|
|
151
160
|
'conversation_pbx_queue_uuid': 'conversation_pbx_queue_uuid', # noqa: E501
|
|
152
161
|
'conversation_voicemail_mailbox_uuid': 'conversation_voicemail_mailbox_uuid', # noqa: E501
|
|
@@ -211,6 +220,8 @@ class ConversationPbxQueue(ModelNormal):
|
|
|
211
220
|
Animal class but this time we won't travel
|
|
212
221
|
through its discriminator because we passed in
|
|
213
222
|
_visited_composed_classes = (Animal,)
|
|
223
|
+
ai_priority (str): AI Agent Priority compared to human agents. [optional] # noqa: E501
|
|
224
|
+
ai_timeout_seconds (int): AI timeout seconds. [optional] # noqa: E501
|
|
214
225
|
announce_queue_position (bool): If true, the customer is told their queue position upon entering the queue. [optional] # noqa: E501
|
|
215
226
|
conversation_pbx_queue_uuid (str): Conversation Pbx Queue unique identifier. [optional] # noqa: E501
|
|
216
227
|
conversation_voicemail_mailbox_uuid (str): The voicemail mailbox associated with this queue. [optional] # noqa: E501
|
|
@@ -317,6 +328,8 @@ class ConversationPbxQueue(ModelNormal):
|
|
|
317
328
|
Animal class but this time we won't travel
|
|
318
329
|
through its discriminator because we passed in
|
|
319
330
|
_visited_composed_classes = (Animal,)
|
|
331
|
+
ai_priority (str): AI Agent Priority compared to human agents. [optional] # noqa: E501
|
|
332
|
+
ai_timeout_seconds (int): AI timeout seconds. [optional] # noqa: E501
|
|
320
333
|
announce_queue_position (bool): If true, the customer is told their queue position upon entering the queue. [optional] # noqa: E501
|
|
321
334
|
conversation_pbx_queue_uuid (str): Conversation Pbx Queue unique identifier. [optional] # noqa: E501
|
|
322
335
|
conversation_voicemail_mailbox_uuid (str): The voicemail mailbox associated with this queue. [optional] # noqa: E501
|
|
@@ -97,6 +97,7 @@ class ConversationVirtualAgentCapabilities(ModelNormal):
|
|
|
97
97
|
'access_storefront_and_item': (bool,), # noqa: E501
|
|
98
98
|
'cancel_subscription': (bool,), # noqa: E501
|
|
99
99
|
'delay_subscription': (bool,), # noqa: E501
|
|
100
|
+
'generate_coupon': (bool,), # noqa: E501
|
|
100
101
|
'lookup_order_information': (bool,), # noqa: E501
|
|
101
102
|
'lookup_subscription_information': (bool,), # noqa: E501
|
|
102
103
|
'open_support_ticket': (bool,), # noqa: E501
|
|
@@ -120,6 +121,7 @@ class ConversationVirtualAgentCapabilities(ModelNormal):
|
|
|
120
121
|
'access_storefront_and_item': 'access_storefront_and_item', # noqa: E501
|
|
121
122
|
'cancel_subscription': 'cancel_subscription', # noqa: E501
|
|
122
123
|
'delay_subscription': 'delay_subscription', # noqa: E501
|
|
124
|
+
'generate_coupon': 'generate_coupon', # noqa: E501
|
|
123
125
|
'lookup_order_information': 'lookup_order_information', # noqa: E501
|
|
124
126
|
'lookup_subscription_information': 'lookup_subscription_information', # noqa: E501
|
|
125
127
|
'open_support_ticket': 'open_support_ticket', # noqa: E501
|
|
@@ -178,6 +180,7 @@ class ConversationVirtualAgentCapabilities(ModelNormal):
|
|
|
178
180
|
access_storefront_and_item (bool): Permission flag to allow this Agent access to the storefront and item information.. [optional] # noqa: E501
|
|
179
181
|
cancel_subscription (bool): [optional] # noqa: E501
|
|
180
182
|
delay_subscription (bool): [optional] # noqa: E501
|
|
183
|
+
generate_coupon (bool): Permission flag to allow this Agent to generate coupons based upon the agent prompt instructions. [optional] # noqa: E501
|
|
181
184
|
lookup_order_information (bool): [optional] # noqa: E501
|
|
182
185
|
lookup_subscription_information (bool): [optional] # noqa: E501
|
|
183
186
|
open_support_ticket (bool): [optional] # noqa: E501
|
|
@@ -278,6 +281,7 @@ class ConversationVirtualAgentCapabilities(ModelNormal):
|
|
|
278
281
|
access_storefront_and_item (bool): Permission flag to allow this Agent access to the storefront and item information.. [optional] # noqa: E501
|
|
279
282
|
cancel_subscription (bool): [optional] # noqa: E501
|
|
280
283
|
delay_subscription (bool): [optional] # noqa: E501
|
|
284
|
+
generate_coupon (bool): Permission flag to allow this Agent to generate coupons based upon the agent prompt instructions. [optional] # noqa: E501
|
|
281
285
|
lookup_order_information (bool): [optional] # noqa: E501
|
|
282
286
|
lookup_subscription_information (bool): [optional] # noqa: E501
|
|
283
287
|
open_support_ticket (bool): [optional] # noqa: E501
|
|
@@ -86,6 +86,7 @@ class CouponFreeItemWithItemPurchaseAndFreeShipping(ModelNormal):
|
|
|
86
86
|
'limit': (int,), # noqa: E501
|
|
87
87
|
'match_required_purchase_item_to_free_item': (bool,), # noqa: E501
|
|
88
88
|
'required_purchase_items': ([str],), # noqa: E501
|
|
89
|
+
'shipping_methods': ([str],), # noqa: E501
|
|
89
90
|
}
|
|
90
91
|
|
|
91
92
|
@cached_property
|
|
@@ -98,6 +99,7 @@ class CouponFreeItemWithItemPurchaseAndFreeShipping(ModelNormal):
|
|
|
98
99
|
'limit': 'limit', # noqa: E501
|
|
99
100
|
'match_required_purchase_item_to_free_item': 'match_required_purchase_item_to_free_item', # noqa: E501
|
|
100
101
|
'required_purchase_items': 'required_purchase_items', # noqa: E501
|
|
102
|
+
'shipping_methods': 'shipping_methods', # noqa: E501
|
|
101
103
|
}
|
|
102
104
|
|
|
103
105
|
read_only_vars = {
|
|
@@ -145,6 +147,7 @@ class CouponFreeItemWithItemPurchaseAndFreeShipping(ModelNormal):
|
|
|
145
147
|
limit (int): The (optional) maximum quantity of discounted items. Free shipping will apply to all units of the free item ids though.. [optional] # noqa: E501
|
|
146
148
|
match_required_purchase_item_to_free_item (bool): If true then the free item is matched 1:1 with the free item in the list.. [optional] # noqa: E501
|
|
147
149
|
required_purchase_items ([str]): Required items (at least one from the list) that must be purchased for coupon to be valid. [optional] # noqa: E501
|
|
150
|
+
shipping_methods ([str]): One or more shipping methods that may be used with this coupon. If not specified or empty, methods that are marked as qualifies for free shipping will be the only free methods. [optional] # noqa: E501
|
|
148
151
|
"""
|
|
149
152
|
|
|
150
153
|
_check_type = kwargs.pop('_check_type', True)
|
|
@@ -234,6 +237,7 @@ class CouponFreeItemWithItemPurchaseAndFreeShipping(ModelNormal):
|
|
|
234
237
|
limit (int): The (optional) maximum quantity of discounted items. Free shipping will apply to all units of the free item ids though.. [optional] # noqa: E501
|
|
235
238
|
match_required_purchase_item_to_free_item (bool): If true then the free item is matched 1:1 with the free item in the list.. [optional] # noqa: E501
|
|
236
239
|
required_purchase_items ([str]): Required items (at least one from the list) that must be purchased for coupon to be valid. [optional] # noqa: E501
|
|
240
|
+
shipping_methods ([str]): One or more shipping methods that may be used with this coupon. If not specified or empty, methods that are marked as qualifies for free shipping will be the only free methods. [optional] # noqa: E501
|
|
237
241
|
"""
|
|
238
242
|
|
|
239
243
|
_check_type = kwargs.pop('_check_type', True)
|
|
@@ -87,6 +87,7 @@ class CouponPercentOffItemsAndFreeShipping(ModelNormal):
|
|
|
87
87
|
'excluded_items': ([str],), # noqa: E501
|
|
88
88
|
'item_tags': ([str],), # noqa: E501
|
|
89
89
|
'items': ([str],), # noqa: E501
|
|
90
|
+
'shipping_methods': ([str],), # noqa: E501
|
|
90
91
|
}
|
|
91
92
|
|
|
92
93
|
@cached_property
|
|
@@ -100,6 +101,7 @@ class CouponPercentOffItemsAndFreeShipping(ModelNormal):
|
|
|
100
101
|
'excluded_items': 'excluded_items', # noqa: E501
|
|
101
102
|
'item_tags': 'item_tags', # noqa: E501
|
|
102
103
|
'items': 'items', # noqa: E501
|
|
104
|
+
'shipping_methods': 'shipping_methods', # noqa: E501
|
|
103
105
|
}
|
|
104
106
|
|
|
105
107
|
read_only_vars = {
|
|
@@ -148,6 +150,7 @@ class CouponPercentOffItemsAndFreeShipping(ModelNormal):
|
|
|
148
150
|
excluded_items ([str]): A list of items which cannot be discounted.. [optional] # noqa: E501
|
|
149
151
|
item_tags ([str]): An optional list of item tags which will receive a discount. If blank, discount applies to all items except excluded items.. [optional] # noqa: E501
|
|
150
152
|
items ([str]): An optional list of items which will receive a discount. If blank, discount applies to all items except excluded items.. [optional] # noqa: E501
|
|
153
|
+
shipping_methods ([str]): One or more shipping methods that may be used with this coupon. If not specified or empty, methods that are marked as qualifies for free shipping will be the only free methods. [optional] # noqa: E501
|
|
151
154
|
"""
|
|
152
155
|
|
|
153
156
|
_check_type = kwargs.pop('_check_type', True)
|
|
@@ -238,6 +241,7 @@ class CouponPercentOffItemsAndFreeShipping(ModelNormal):
|
|
|
238
241
|
excluded_items ([str]): A list of items which cannot be discounted.. [optional] # noqa: E501
|
|
239
242
|
item_tags ([str]): An optional list of item tags which will receive a discount. If blank, discount applies to all items except excluded items.. [optional] # noqa: E501
|
|
240
243
|
items ([str]): An optional list of items which will receive a discount. If blank, discount applies to all items except excluded items.. [optional] # noqa: E501
|
|
244
|
+
shipping_methods ([str]): One or more shipping methods that may be used with this coupon. If not specified or empty, methods that are marked as qualifies for free shipping will be the only free methods. [optional] # noqa: E501
|
|
241
245
|
"""
|
|
242
246
|
|
|
243
247
|
_check_type = kwargs.pop('_check_type', True)
|
|
@@ -56,6 +56,10 @@ class CustomerQuery(ModelNormal):
|
|
|
56
56
|
"""
|
|
57
57
|
|
|
58
58
|
allowed_values = {
|
|
59
|
+
('query_target',): {
|
|
60
|
+
'ORIGIN': "origin",
|
|
61
|
+
'CACHE': "cache",
|
|
62
|
+
},
|
|
59
63
|
}
|
|
60
64
|
|
|
61
65
|
validations = {
|
|
@@ -157,6 +161,7 @@ class CustomerQuery(ModelNormal):
|
|
|
157
161
|
'pricing_tier_name': (str,), # noqa: E501
|
|
158
162
|
'pricing_tier_oid': (int,), # noqa: E501
|
|
159
163
|
'qb_class': (str,), # noqa: E501
|
|
164
|
+
'query_target': (str,), # noqa: E501
|
|
160
165
|
'quickbooks_code': (str,), # noqa: E501
|
|
161
166
|
'shipping_city': (str,), # noqa: E501
|
|
162
167
|
'shipping_company': (str,), # noqa: E501
|
|
@@ -195,6 +200,7 @@ class CustomerQuery(ModelNormal):
|
|
|
195
200
|
'pricing_tier_name': 'pricing_tier_name', # noqa: E501
|
|
196
201
|
'pricing_tier_oid': 'pricing_tier_oid', # noqa: E501
|
|
197
202
|
'qb_class': 'qb_class', # noqa: E501
|
|
203
|
+
'query_target': 'query_target', # noqa: E501
|
|
198
204
|
'quickbooks_code': 'quickbooks_code', # noqa: E501
|
|
199
205
|
'shipping_city': 'shipping_city', # noqa: E501
|
|
200
206
|
'shipping_company': 'shipping_company', # noqa: E501
|
|
@@ -268,6 +274,7 @@ class CustomerQuery(ModelNormal):
|
|
|
268
274
|
pricing_tier_name (str): Pricing tier name. [optional] # noqa: E501
|
|
269
275
|
pricing_tier_oid (int): Pricing tier oid. [optional] # noqa: E501
|
|
270
276
|
qb_class (str): QuickBooks class to import this customer as. [optional] # noqa: E501
|
|
277
|
+
query_target (str): Query Target. [optional] # noqa: E501
|
|
271
278
|
quickbooks_code (str): QuickBooks name to import this customer as. [optional] # noqa: E501
|
|
272
279
|
shipping_city (str): Billing city. [optional] # noqa: E501
|
|
273
280
|
shipping_company (str): Billing company. [optional] # noqa: E501
|
|
@@ -383,6 +390,7 @@ class CustomerQuery(ModelNormal):
|
|
|
383
390
|
pricing_tier_name (str): Pricing tier name. [optional] # noqa: E501
|
|
384
391
|
pricing_tier_oid (int): Pricing tier oid. [optional] # noqa: E501
|
|
385
392
|
qb_class (str): QuickBooks class to import this customer as. [optional] # noqa: E501
|
|
393
|
+
query_target (str): Query Target. [optional] # noqa: E501
|
|
386
394
|
quickbooks_code (str): QuickBooks name to import this customer as. [optional] # noqa: E501
|
|
387
395
|
shipping_city (str): Billing city. [optional] # noqa: E501
|
|
388
396
|
shipping_company (str): Billing company. [optional] # noqa: E501
|
|
@@ -82,6 +82,9 @@ class EmailCommseqEmail(ModelNormal):
|
|
|
82
82
|
and the value is attribute type.
|
|
83
83
|
"""
|
|
84
84
|
return {
|
|
85
|
+
'ai_generation': (bool,), # noqa: E501
|
|
86
|
+
'ai_generation_prompt': (str,), # noqa: E501
|
|
87
|
+
'ai_generation_user_id': (int,), # noqa: E501
|
|
85
88
|
'deleted': (bool,), # noqa: E501
|
|
86
89
|
'edited_by_user': (str,), # noqa: E501
|
|
87
90
|
'email_communication_sequence_email_uuid': (str,), # noqa: E501
|
|
@@ -124,6 +127,9 @@ class EmailCommseqEmail(ModelNormal):
|
|
|
124
127
|
|
|
125
128
|
|
|
126
129
|
attribute_map = {
|
|
130
|
+
'ai_generation': 'ai_generation', # noqa: E501
|
|
131
|
+
'ai_generation_prompt': 'ai_generation_prompt', # noqa: E501
|
|
132
|
+
'ai_generation_user_id': 'ai_generation_user_id', # noqa: E501
|
|
127
133
|
'deleted': 'deleted', # noqa: E501
|
|
128
134
|
'edited_by_user': 'edited_by_user', # noqa: E501
|
|
129
135
|
'email_communication_sequence_email_uuid': 'email_communication_sequence_email_uuid', # noqa: E501
|
|
@@ -201,6 +207,9 @@ class EmailCommseqEmail(ModelNormal):
|
|
|
201
207
|
Animal class but this time we won't travel
|
|
202
208
|
through its discriminator because we passed in
|
|
203
209
|
_visited_composed_classes = (Animal,)
|
|
210
|
+
ai_generation (bool): [optional] # noqa: E501
|
|
211
|
+
ai_generation_prompt (str): [optional] # noqa: E501
|
|
212
|
+
ai_generation_user_id (int): [optional] # noqa: E501
|
|
204
213
|
deleted (bool): Deleted. [optional] # noqa: E501
|
|
205
214
|
edited_by_user (str): Edited by user. [optional] # noqa: E501
|
|
206
215
|
email_communication_sequence_email_uuid (str): Email communication sequence email uuid. [optional] # noqa: E501
|
|
@@ -320,6 +329,9 @@ class EmailCommseqEmail(ModelNormal):
|
|
|
320
329
|
Animal class but this time we won't travel
|
|
321
330
|
through its discriminator because we passed in
|
|
322
331
|
_visited_composed_classes = (Animal,)
|
|
332
|
+
ai_generation (bool): [optional] # noqa: E501
|
|
333
|
+
ai_generation_prompt (str): [optional] # noqa: E501
|
|
334
|
+
ai_generation_user_id (int): [optional] # noqa: E501
|
|
323
335
|
deleted (bool): Deleted. [optional] # noqa: E501
|
|
324
336
|
edited_by_user (str): Edited by user. [optional] # noqa: E501
|
|
325
337
|
email_communication_sequence_email_uuid (str): Email communication sequence email uuid. [optional] # noqa: E501
|