ultracart-rest-sdk 4.1.49__py3-none-any.whl → 4.1.55__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. ultracart/__init__.py +1 -1
  2. ultracart/api/conversation_api.py +292 -0
  3. ultracart/api_client.py +1 -1
  4. ultracart/configuration.py +1 -1
  5. ultracart/model/conversation_pbx_agent.py +21 -4
  6. ultracart/model/conversation_pbx_call.py +370 -0
  7. ultracart/model/conversation_pbx_call_agent.py +296 -0
  8. ultracart/model/conversation_pbx_call_ai_cost.py +276 -0
  9. ultracart/model/conversation_pbx_call_ai_engagement.py +314 -0
  10. ultracart/model/conversation_pbx_call_ai_tool_call.py +296 -0
  11. ultracart/model/conversation_pbx_call_ai_whisper.py +276 -0
  12. ultracart/model/conversation_pbx_call_caller.py +280 -0
  13. ultracart/model/conversation_pbx_call_financial.py +288 -0
  14. ultracart/model/conversation_pbx_call_hold.py +276 -0
  15. ultracart/model/conversation_pbx_call_queue.py +284 -0
  16. ultracart/model/conversation_pbx_call_recording.py +294 -0
  17. ultracart/model/conversation_pbx_call_response.py +292 -0
  18. ultracart/model/conversation_pbx_call_routing.py +278 -0
  19. ultracart/model/conversation_pbx_call_search_request.py +324 -0
  20. ultracart/model/conversation_pbx_call_search_response.py +292 -0
  21. ultracart/model/conversation_pbx_call_timeline.py +284 -0
  22. ultracart/model/conversation_pbx_call_transcript.py +294 -0
  23. ultracart/model/conversation_pbx_call_transcript_segment.py +292 -0
  24. ultracart/model/conversation_pbx_call_transfer.py +280 -0
  25. ultracart/model/conversation_pbx_hardware_phone.py +21 -2
  26. ultracart/model/conversation_pbx_phone_number.py +4 -0
  27. ultracart/model/conversation_pbx_queue.py +4 -0
  28. ultracart/models/__init__.py +19 -0
  29. {ultracart_rest_sdk-4.1.49.dist-info → ultracart_rest_sdk-4.1.55.dist-info}/METADATA +1 -1
  30. {ultracart_rest_sdk-4.1.49.dist-info → ultracart_rest_sdk-4.1.55.dist-info}/RECORD +33 -14
  31. {ultracart_rest_sdk-4.1.49.dist-info → ultracart_rest_sdk-4.1.55.dist-info}/LICENSE +0 -0
  32. {ultracart_rest_sdk-4.1.49.dist-info → ultracart_rest_sdk-4.1.55.dist-info}/WHEEL +0 -0
  33. {ultracart_rest_sdk-4.1.49.dist-info → ultracart_rest_sdk-4.1.55.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,280 @@
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 ConversationPbxCallTransfer(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
+ }
63
+
64
+ @cached_property
65
+ def additional_properties_type():
66
+ """
67
+ This must be a method because a model may have properties that are
68
+ of type self, this must run after the class is loaded
69
+ """
70
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
71
+
72
+ _nullable = False
73
+
74
+ @cached_property
75
+ def openapi_types():
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
+ Returns
81
+ openapi_types (dict): The key is attribute name
82
+ and the value is attribute type.
83
+ """
84
+ return {
85
+ 'transfer_reason': (str,), # noqa: E501
86
+ 'transfer_type': (str,), # noqa: E501
87
+ 'transferred_at_dts': (str,), # noqa: E501
88
+ 'transferred_by_agent_id': (str,), # noqa: E501
89
+ 'transferred_to': (str,), # noqa: E501
90
+ }
91
+
92
+ @cached_property
93
+ def discriminator():
94
+ return None
95
+
96
+
97
+ attribute_map = {
98
+ 'transfer_reason': 'transfer_reason', # noqa: E501
99
+ 'transfer_type': 'transfer_type', # noqa: E501
100
+ 'transferred_at_dts': 'transferred_at_dts', # noqa: E501
101
+ 'transferred_by_agent_id': 'transferred_by_agent_id', # noqa: E501
102
+ 'transferred_to': 'transferred_to', # noqa: E501
103
+ }
104
+
105
+ read_only_vars = {
106
+ }
107
+
108
+ _composed_schemas = {}
109
+
110
+ @classmethod
111
+ @convert_js_args_to_python_args
112
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
113
+ """ConversationPbxCallTransfer - a model defined in OpenAPI
114
+
115
+ Keyword Args:
116
+ _check_type (bool): if True, values for parameters in openapi_types
117
+ will be type checked and a TypeError will be
118
+ raised if the wrong type is input.
119
+ Defaults to True
120
+ _path_to_item (tuple/list): This is a list of keys or values to
121
+ drill down to the model in received_data
122
+ when deserializing a response
123
+ _spec_property_naming (bool): True if the variable names in the input data
124
+ are serialized names, as specified in the OpenAPI document.
125
+ False if the variable names in the input data
126
+ are pythonic names, e.g. snake case (default)
127
+ _configuration (Configuration): the instance to use when
128
+ deserializing a file_type parameter.
129
+ If passed, type conversion is attempted
130
+ If omitted no type conversion is done.
131
+ _visited_composed_classes (tuple): This stores a tuple of
132
+ classes that we have traveled through so that
133
+ if we see that class again we will not use its
134
+ discriminator again.
135
+ When traveling through a discriminator, the
136
+ composed schema that is
137
+ is traveled through is added to this set.
138
+ For example if Animal has a discriminator
139
+ petType and we pass in "Dog", and the class Dog
140
+ allOf includes Animal, we move through Animal
141
+ once using the discriminator, and pick Dog.
142
+ Then in Dog, we will make an instance of the
143
+ Animal class but this time we won't travel
144
+ through its discriminator because we passed in
145
+ _visited_composed_classes = (Animal,)
146
+ transfer_reason (str): Reason provided for the transfer. [optional] # noqa: E501
147
+ transfer_type (str): Type of transfer performed. [optional] # noqa: E501
148
+ transferred_at_dts (str): Timestamp when the transfer occurred. [optional] # noqa: E501
149
+ transferred_by_agent_id (str): ID of the agent who initiated the transfer. [optional] # noqa: E501
150
+ transferred_to (str): Destination of the transfer (agent ID, queue name, or phone number). [optional] # noqa: E501
151
+ """
152
+
153
+ _check_type = kwargs.pop('_check_type', True)
154
+ _spec_property_naming = kwargs.pop('_spec_property_naming', True)
155
+ _path_to_item = kwargs.pop('_path_to_item', ())
156
+ _configuration = kwargs.pop('_configuration', None)
157
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
158
+
159
+ self = super(OpenApiModel, cls).__new__(cls)
160
+
161
+ if args:
162
+ for arg in args:
163
+ if isinstance(arg, dict):
164
+ kwargs.update(arg)
165
+ else:
166
+ raise ApiTypeError(
167
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
168
+ args,
169
+ self.__class__.__name__,
170
+ ),
171
+ path_to_item=_path_to_item,
172
+ valid_classes=(self.__class__,),
173
+ )
174
+
175
+ self._data_store = {}
176
+ self._check_type = _check_type
177
+ self._spec_property_naming = _spec_property_naming
178
+ self._path_to_item = _path_to_item
179
+ self._configuration = _configuration
180
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
181
+
182
+ for var_name, var_value in kwargs.items():
183
+ if var_name not in self.attribute_map and \
184
+ self._configuration is not None and \
185
+ self._configuration.discard_unknown_keys and \
186
+ self.additional_properties_type is None:
187
+ # discard variable.
188
+ continue
189
+ setattr(self, var_name, var_value)
190
+ return self
191
+
192
+ required_properties = set([
193
+ '_data_store',
194
+ '_check_type',
195
+ '_spec_property_naming',
196
+ '_path_to_item',
197
+ '_configuration',
198
+ '_visited_composed_classes',
199
+ ])
200
+
201
+ @convert_js_args_to_python_args
202
+ def __init__(self, *args, **kwargs): # noqa: E501
203
+ """ConversationPbxCallTransfer - a model defined in OpenAPI
204
+
205
+ Keyword Args:
206
+ _check_type (bool): if True, values for parameters in openapi_types
207
+ will be type checked and a TypeError will be
208
+ raised if the wrong type is input.
209
+ Defaults to True
210
+ _path_to_item (tuple/list): This is a list of keys or values to
211
+ drill down to the model in received_data
212
+ when deserializing a response
213
+ _spec_property_naming (bool): True if the variable names in the input data
214
+ are serialized names, as specified in the OpenAPI document.
215
+ False if the variable names in the input data
216
+ are pythonic names, e.g. snake case (default)
217
+ _configuration (Configuration): the instance to use when
218
+ deserializing a file_type parameter.
219
+ If passed, type conversion is attempted
220
+ If omitted no type conversion is done.
221
+ _visited_composed_classes (tuple): This stores a tuple of
222
+ classes that we have traveled through so that
223
+ if we see that class again we will not use its
224
+ discriminator again.
225
+ When traveling through a discriminator, the
226
+ composed schema that is
227
+ is traveled through is added to this set.
228
+ For example if Animal has a discriminator
229
+ petType and we pass in "Dog", and the class Dog
230
+ allOf includes Animal, we move through Animal
231
+ once using the discriminator, and pick Dog.
232
+ Then in Dog, we will make an instance of the
233
+ Animal class but this time we won't travel
234
+ through its discriminator because we passed in
235
+ _visited_composed_classes = (Animal,)
236
+ transfer_reason (str): Reason provided for the transfer. [optional] # noqa: E501
237
+ transfer_type (str): Type of transfer performed. [optional] # noqa: E501
238
+ transferred_at_dts (str): Timestamp when the transfer occurred. [optional] # noqa: E501
239
+ transferred_by_agent_id (str): ID of the agent who initiated the transfer. [optional] # noqa: E501
240
+ transferred_to (str): Destination of the transfer (agent ID, queue name, or phone number). [optional] # noqa: E501
241
+ """
242
+
243
+ _check_type = kwargs.pop('_check_type', True)
244
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
245
+ _path_to_item = kwargs.pop('_path_to_item', ())
246
+ _configuration = kwargs.pop('_configuration', None)
247
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
248
+
249
+ if args:
250
+ for arg in args:
251
+ if isinstance(arg, dict):
252
+ kwargs.update(arg)
253
+ else:
254
+ raise ApiTypeError(
255
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
256
+ args,
257
+ self.__class__.__name__,
258
+ ),
259
+ path_to_item=_path_to_item,
260
+ valid_classes=(self.__class__,),
261
+ )
262
+
263
+ self._data_store = {}
264
+ self._check_type = _check_type
265
+ self._spec_property_naming = _spec_property_naming
266
+ self._path_to_item = _path_to_item
267
+ self._configuration = _configuration
268
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
269
+
270
+ for var_name, var_value in kwargs.items():
271
+ if var_name not in self.attribute_map and \
272
+ self._configuration is not None and \
273
+ self._configuration.discard_unknown_keys and \
274
+ self.additional_properties_type is None:
275
+ # discard variable.
276
+ continue
277
+ setattr(self, var_name, var_value)
278
+ if var_name in self.read_only_vars:
279
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
280
+ f"class with read only attributes.")
@@ -83,6 +83,9 @@ class ConversationPbxHardwarePhone(ModelNormal):
83
83
  ('sip_domain',): {
84
84
  'max_length': 200,
85
85
  },
86
+ ('sip_edge_location',): {
87
+ 'max_length': 50,
88
+ },
86
89
  ('sip_password',): {
87
90
  'max_length': 100,
88
91
  },
@@ -112,6 +115,8 @@ class ConversationPbxHardwarePhone(ModelNormal):
112
115
  and the value is attribute type.
113
116
  """
114
117
  return {
118
+ 'admin_username': (str,), # noqa: E501
119
+ 'conversation_pbx_agent_uuid': (str,), # noqa: E501
115
120
  'conversation_pbx_hardware_phone_uuid': (str,), # noqa: E501
116
121
  'created_at': (bool, date, datetime, dict, float, int, list, str, none_type,), # noqa: E501
117
122
  'description': (str,), # noqa: E501
@@ -122,8 +127,10 @@ class ConversationPbxHardwarePhone(ModelNormal):
122
127
  'name': (str,), # noqa: E501
123
128
  'provisioning_url': (str,), # noqa: E501
124
129
  'sip_domain': (str,), # noqa: E501
130
+ 'sip_edge_location': (str,), # noqa: E501
125
131
  'sip_password': (str,), # noqa: E501
126
132
  'sip_username': (str,), # noqa: E501
133
+ 'twilio_credential_sid': (str,), # noqa: E501
127
134
  'updated_at': (bool, date, datetime, dict, float, int, list, str, none_type,), # noqa: E501
128
135
  }
129
136
 
@@ -133,6 +140,8 @@ class ConversationPbxHardwarePhone(ModelNormal):
133
140
 
134
141
 
135
142
  attribute_map = {
143
+ 'admin_username': 'admin_username', # noqa: E501
144
+ 'conversation_pbx_agent_uuid': 'conversation_pbx_agent_uuid', # noqa: E501
136
145
  'conversation_pbx_hardware_phone_uuid': 'conversation_pbx_hardware_phone_uuid', # noqa: E501
137
146
  'created_at': 'created_at', # noqa: E501
138
147
  'description': 'description', # noqa: E501
@@ -143,8 +152,10 @@ class ConversationPbxHardwarePhone(ModelNormal):
143
152
  'name': 'name', # noqa: E501
144
153
  'provisioning_url': 'provisioning_url', # noqa: E501
145
154
  'sip_domain': 'sip_domain', # noqa: E501
155
+ 'sip_edge_location': 'sip_edge_location', # noqa: E501
146
156
  'sip_password': 'sip_password', # noqa: E501
147
157
  'sip_username': 'sip_username', # noqa: E501
158
+ 'twilio_credential_sid': 'twilio_credential_sid', # noqa: E501
148
159
  'updated_at': 'updated_at', # noqa: E501
149
160
  }
150
161
 
@@ -189,6 +200,8 @@ class ConversationPbxHardwarePhone(ModelNormal):
189
200
  Animal class but this time we won't travel
190
201
  through its discriminator because we passed in
191
202
  _visited_composed_classes = (Animal,)
203
+ admin_username (str): Admin Username. [optional] # noqa: E501
204
+ conversation_pbx_agent_uuid (str): Associated Agent UUID. [optional] # noqa: E501
192
205
  conversation_pbx_hardware_phone_uuid (str): Conversation Pbx Hardware Phone UUID. [optional] # noqa: E501
193
206
  created_at (bool, date, datetime, dict, float, int, list, str, none_type): Created At. [optional] # noqa: E501
194
207
  description (str): Description. [optional] # noqa: E501
@@ -199,8 +212,10 @@ class ConversationPbxHardwarePhone(ModelNormal):
199
212
  name (str): Name. [optional] # noqa: E501
200
213
  provisioning_url (str): Auto-provisioning URL for phone configuration. [optional] # noqa: E501
201
214
  sip_domain (str): SIP Domain. [optional] # noqa: E501
202
- sip_password (str): SIP Password. [optional] # noqa: E501
215
+ sip_edge_location (str): SIP Edge Location. [optional] # noqa: E501
216
+ sip_password (str): SIP Password (only on create or regenerate password requests). [optional] # noqa: E501
203
217
  sip_username (str): SIP Username. [optional] # noqa: E501
218
+ twilio_credential_sid (str): Twilio Credential SID. [optional] # noqa: E501
204
219
  updated_at (bool, date, datetime, dict, float, int, list, str, none_type): Updated At. [optional] # noqa: E501
205
220
  """
206
221
 
@@ -287,6 +302,8 @@ class ConversationPbxHardwarePhone(ModelNormal):
287
302
  Animal class but this time we won't travel
288
303
  through its discriminator because we passed in
289
304
  _visited_composed_classes = (Animal,)
305
+ admin_username (str): Admin Username. [optional] # noqa: E501
306
+ conversation_pbx_agent_uuid (str): Associated Agent UUID. [optional] # noqa: E501
290
307
  conversation_pbx_hardware_phone_uuid (str): Conversation Pbx Hardware Phone UUID. [optional] # noqa: E501
291
308
  created_at (bool, date, datetime, dict, float, int, list, str, none_type): Created At. [optional] # noqa: E501
292
309
  description (str): Description. [optional] # noqa: E501
@@ -297,8 +314,10 @@ class ConversationPbxHardwarePhone(ModelNormal):
297
314
  name (str): Name. [optional] # noqa: E501
298
315
  provisioning_url (str): Auto-provisioning URL for phone configuration. [optional] # noqa: E501
299
316
  sip_domain (str): SIP Domain. [optional] # noqa: E501
300
- sip_password (str): SIP Password. [optional] # noqa: E501
317
+ sip_edge_location (str): SIP Edge Location. [optional] # noqa: E501
318
+ sip_password (str): SIP Password (only on create or regenerate password requests). [optional] # noqa: E501
301
319
  sip_username (str): SIP Username. [optional] # noqa: E501
320
+ twilio_credential_sid (str): Twilio Credential SID. [optional] # noqa: E501
302
321
  updated_at (bool, date, datetime, dict, float, int, list, str, none_type): Updated At. [optional] # noqa: E501
303
322
  """
304
323
 
@@ -111,6 +111,7 @@ class ConversationPbxPhoneNumber(ModelNormal):
111
111
  'action_target': (str,), # noqa: E501
112
112
  'address_sid': (str,), # noqa: E501
113
113
  'conversation_pbx_phone_number_uuid': (str,), # noqa: E501
114
+ 'default_phone_number': (bool,), # noqa: E501
114
115
  'deletion_protected': (bool,), # noqa: E501
115
116
  'merchant_id': (str,), # noqa: E501
116
117
  'phone_number': (str,), # noqa: E501
@@ -126,6 +127,7 @@ class ConversationPbxPhoneNumber(ModelNormal):
126
127
  'action_target': 'action_target', # noqa: E501
127
128
  'address_sid': 'address_sid', # noqa: E501
128
129
  'conversation_pbx_phone_number_uuid': 'conversation_pbx_phone_number_uuid', # noqa: E501
130
+ 'default_phone_number': 'default_phone_number', # noqa: E501
129
131
  'deletion_protected': 'deletion_protected', # noqa: E501
130
132
  'merchant_id': 'merchant_id', # noqa: E501
131
133
  'phone_number': 'phone_number', # noqa: E501
@@ -176,6 +178,7 @@ class ConversationPbxPhoneNumber(ModelNormal):
176
178
  action_target (str): Action target. This is the UUID associated with the configuration object of that particular type.. [optional] # noqa: E501
177
179
  address_sid (str): Twilio Address SID linked to this phone number for regulatory compliance. [optional] # noqa: E501
178
180
  conversation_pbx_phone_number_uuid (str): Conversation Pbx Phone Number UUID. [optional] # noqa: E501
181
+ default_phone_number (bool): Default phone number for outbound calling.. [optional] # noqa: E501
179
182
  deletion_protected (bool): If true, this phone number cannot be deleted through the API. It must be deleted via the Twilio console.. [optional] # noqa: E501
180
183
  merchant_id (str): Merchant Id. [optional] # noqa: E501
181
184
  phone_number (str): Phone number. [optional] # noqa: E501
@@ -268,6 +271,7 @@ class ConversationPbxPhoneNumber(ModelNormal):
268
271
  action_target (str): Action target. This is the UUID associated with the configuration object of that particular type.. [optional] # noqa: E501
269
272
  address_sid (str): Twilio Address SID linked to this phone number for regulatory compliance. [optional] # noqa: E501
270
273
  conversation_pbx_phone_number_uuid (str): Conversation Pbx Phone Number UUID. [optional] # noqa: E501
274
+ default_phone_number (bool): Default phone number for outbound calling.. [optional] # noqa: E501
271
275
  deletion_protected (bool): If true, this phone number cannot be deleted through the API. It must be deleted via the Twilio console.. [optional] # noqa: E501
272
276
  merchant_id (str): Merchant Id. [optional] # noqa: E501
273
277
  phone_number (str): Phone number. [optional] # noqa: E501
@@ -126,6 +126,7 @@ class ConversationPbxQueue(ModelNormal):
126
126
  'ai_priority': (str,), # noqa: E501
127
127
  'ai_timeout_seconds': (int,), # noqa: E501
128
128
  'announce_queue_position': (bool,), # noqa: E501
129
+ 'automatic_coach_agent_uuid': (str,), # noqa: E501
129
130
  'conversation_pbx_queue_uuid': (str,), # noqa: E501
130
131
  'conversation_voicemail_mailbox_uuid': (str,), # noqa: E501
131
132
  'hold_conversation_pbx_audio_uuid': (str,), # noqa: E501
@@ -157,6 +158,7 @@ class ConversationPbxQueue(ModelNormal):
157
158
  'ai_priority': 'ai_priority', # noqa: E501
158
159
  'ai_timeout_seconds': 'ai_timeout_seconds', # noqa: E501
159
160
  'announce_queue_position': 'announce_queue_position', # noqa: E501
161
+ 'automatic_coach_agent_uuid': 'automatic_coach_agent_uuid', # noqa: E501
160
162
  'conversation_pbx_queue_uuid': 'conversation_pbx_queue_uuid', # noqa: E501
161
163
  'conversation_voicemail_mailbox_uuid': 'conversation_voicemail_mailbox_uuid', # noqa: E501
162
164
  'hold_conversation_pbx_audio_uuid': 'hold_conversation_pbx_audio_uuid', # noqa: E501
@@ -223,6 +225,7 @@ class ConversationPbxQueue(ModelNormal):
223
225
  ai_priority (str): AI Agent Priority compared to human agents. [optional] # noqa: E501
224
226
  ai_timeout_seconds (int): AI timeout seconds. [optional] # noqa: E501
225
227
  announce_queue_position (bool): If true, the customer is told their queue position upon entering the queue. [optional] # noqa: E501
228
+ automatic_coach_agent_uuid (str): AI Agent UUID to automatically engage to provide coaching. [optional] # noqa: E501
226
229
  conversation_pbx_queue_uuid (str): Conversation Pbx Queue unique identifier. [optional] # noqa: E501
227
230
  conversation_voicemail_mailbox_uuid (str): The voicemail mailbox associated with this queue. [optional] # noqa: E501
228
231
  hold_conversation_pbx_audio_uuid (str): The audio to play while holding in a queue. [optional] # noqa: E501
@@ -331,6 +334,7 @@ class ConversationPbxQueue(ModelNormal):
331
334
  ai_priority (str): AI Agent Priority compared to human agents. [optional] # noqa: E501
332
335
  ai_timeout_seconds (int): AI timeout seconds. [optional] # noqa: E501
333
336
  announce_queue_position (bool): If true, the customer is told their queue position upon entering the queue. [optional] # noqa: E501
337
+ automatic_coach_agent_uuid (str): AI Agent UUID to automatically engage to provide coaching. [optional] # noqa: E501
334
338
  conversation_pbx_queue_uuid (str): Conversation Pbx Queue unique identifier. [optional] # noqa: E501
335
339
  conversation_voicemail_mailbox_uuid (str): The voicemail mailbox associated with this queue. [optional] # noqa: E501
336
340
  hold_conversation_pbx_audio_uuid (str): The audio to play while holding in a queue. [optional] # noqa: E501
@@ -204,6 +204,25 @@ from ultracart.model.conversation_pbx_audio_usage_response import ConversationPb
204
204
  from ultracart.model.conversation_pbx_audios_response import ConversationPbxAudiosResponse
205
205
  from ultracart.model.conversation_pbx_available_phone_number import ConversationPbxAvailablePhoneNumber
206
206
  from ultracart.model.conversation_pbx_available_phone_numbers_response import ConversationPbxAvailablePhoneNumbersResponse
207
+ from ultracart.model.conversation_pbx_call import ConversationPbxCall
208
+ from ultracart.model.conversation_pbx_call_agent import ConversationPbxCallAgent
209
+ from ultracart.model.conversation_pbx_call_ai_cost import ConversationPbxCallAiCost
210
+ from ultracart.model.conversation_pbx_call_ai_engagement import ConversationPbxCallAiEngagement
211
+ from ultracart.model.conversation_pbx_call_ai_tool_call import ConversationPbxCallAiToolCall
212
+ from ultracart.model.conversation_pbx_call_ai_whisper import ConversationPbxCallAiWhisper
213
+ from ultracart.model.conversation_pbx_call_caller import ConversationPbxCallCaller
214
+ from ultracart.model.conversation_pbx_call_financial import ConversationPbxCallFinancial
215
+ from ultracart.model.conversation_pbx_call_hold import ConversationPbxCallHold
216
+ from ultracart.model.conversation_pbx_call_queue import ConversationPbxCallQueue
217
+ from ultracart.model.conversation_pbx_call_recording import ConversationPbxCallRecording
218
+ from ultracart.model.conversation_pbx_call_response import ConversationPbxCallResponse
219
+ from ultracart.model.conversation_pbx_call_routing import ConversationPbxCallRouting
220
+ from ultracart.model.conversation_pbx_call_search_request import ConversationPbxCallSearchRequest
221
+ from ultracart.model.conversation_pbx_call_search_response import ConversationPbxCallSearchResponse
222
+ from ultracart.model.conversation_pbx_call_timeline import ConversationPbxCallTimeline
223
+ from ultracart.model.conversation_pbx_call_transcript import ConversationPbxCallTranscript
224
+ from ultracart.model.conversation_pbx_call_transcript_segment import ConversationPbxCallTranscriptSegment
225
+ from ultracart.model.conversation_pbx_call_transfer import ConversationPbxCallTransfer
207
226
  from ultracart.model.conversation_pbx_customer_snapshot_request import ConversationPbxCustomerSnapshotRequest
208
227
  from ultracart.model.conversation_pbx_customer_snapshot_response import ConversationPbxCustomerSnapshotResponse
209
228
  from ultracart.model.conversation_pbx_hardware_phone import ConversationPbxHardwarePhone
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultracart-rest-sdk
3
- Version: 4.1.49
3
+ Version: 4.1.55
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=TYB5ipftyYB7roS8FSU6tSmjqUQn78MKjFD__V-a9eo,698
2
- ultracart/api_client.py,sha256=z4987Af9njEthzIYypuok_0VnaLMtdqI75h8Xh9wob8,39071
3
- ultracart/configuration.py,sha256=7VfBDCZ5J5LPvnKdgTc0OBXg9HSJu8j_xeI8mLBxDBM,17841
1
+ ultracart/__init__.py,sha256=VuqMqSfbJh_oy09pT3_ev6x7blHEndI_oKACFZoc3o8,698
2
+ ultracart/api_client.py,sha256=zzrxHUaf36FhINwmrX2XcQlFYELRjUJwp6EagTIVkc0,39071
3
+ ultracart/configuration.py,sha256=ijYAoyUK4hvsCuILSZ6ie78v2jfPu0TzcqEmkAM95ic,17841
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
@@ -9,7 +9,7 @@ ultracart/api/affiliate_api.py,sha256=Rq7y9AAmN2gOT57qTulnMkr-W4SBboMrzKyM2SXT6R
9
9
  ultracart/api/auto_order_api.py,sha256=Fxh8jqvSKGeVDod9pWGV9z6mgzP1cVS2hvqQA1bLNnI,72000
10
10
  ultracart/api/channel_partner_api.py,sha256=EbAPFtaF8E38jrD7JgDaD-rGU3DM86O3lBPhDuq_fw4,89568
11
11
  ultracart/api/checkout_api.py,sha256=KLZAsTMiY55AHDhubbNZYipBPGwihQbEsLDjIDzkLkQ,105889
12
- ultracart/api/conversation_api.py,sha256=NyHQbGZbo23CUbdNh4gnoC5i0FRz4vYDGej8rEuxzwM,613041
12
+ ultracart/api/conversation_api.py,sha256=v-j7x_FQZBfGcfgigYXi-Yw9FZS6Hy_V_zDFg0dogdw,624530
13
13
  ultracart/api/coupon_api.py,sha256=voBpCzDhuBog_0WKSj9J-2zKSI8LyJINjUneeLAwlHg,109039
14
14
  ultracart/api/customer_api.py,sha256=vOM1GTsUFMfEwp9pYF2H_efZbZgMk-L1hlq4qA0CqZ8,153900
15
15
  ultracart/api/datawarehouse_api.py,sha256=QkXb1rXOjjsmVcpP5epPnmmxo-w2GRA1Z0xrnfGtftE,162366
@@ -211,7 +211,7 @@ ultracart/model/conversation_participant.py,sha256=AL9wPJxm2TozPN31HbUisIv6AhvTL
211
211
  ultracart/model/conversation_pbx_address.py,sha256=iTlORJI21e55aT7ZlMCgjDtveqlj86Wqq6lFG75S0PA,15396
212
212
  ultracart/model/conversation_pbx_address_response.py,sha256=bRPz3PD7drTc5NcigJsE27NZ3iYe7Yy5w4NiVY7ssrY,12901
213
213
  ultracart/model/conversation_pbx_addresses_response.py,sha256=s32DRvLOnNu_Nkmqs_YAHHnzJyyzfCrV0QqxNJFk4ug,11742
214
- ultracart/model/conversation_pbx_agent.py,sha256=zRsqJ9Xiaqw0yyN5KrHLi8n7uocYsWNE2OuQ18bMO00,17249
214
+ ultracart/model/conversation_pbx_agent.py,sha256=8RJUOedY3euqB9IdRSsTqrOmNykoobG0_qBFszRswVc,18648
215
215
  ultracart/model/conversation_pbx_agent_response.py,sha256=ExYxi_fMSjPzyaBA1U9OODt0Ktn8DSMHlRFiq8vfQ04,12871
216
216
  ultracart/model/conversation_pbx_agents_response.py,sha256=DsJzAkoq_3y8maXw3rlGTfshJnZK9gG0sdVO5WnFjTQ,12885
217
217
  ultracart/model/conversation_pbx_audio.py,sha256=0SF54E2KA7HeOb8szFIeydhTuilStBu7cbE3A0GX_JA,14218
@@ -222,9 +222,28 @@ ultracart/model/conversation_pbx_audio_usage_response.py,sha256=tNc1ZTFkkUKvRiIc
222
222
  ultracart/model/conversation_pbx_audios_response.py,sha256=llnOyuMCddIzgEzHTVHSKHeA7aha8ns6w2NDViqR8cY,12885
223
223
  ultracart/model/conversation_pbx_available_phone_number.py,sha256=wEQ-D-5XA16jNkUtvncniAKC6d-6IarEe8Ac5mJPrg4,14272
224
224
  ultracart/model/conversation_pbx_available_phone_numbers_response.py,sha256=O9BC6M9WeYvxn8UlSmrplZozi7zp9hUr9p6MtKmPtTs,13122
225
+ ultracart/model/conversation_pbx_call.py,sha256=GClsWVFCBFawZ0PNSEzkVtMwPehc71yBcwygUZ_fr5E,19625
226
+ ultracart/model/conversation_pbx_call_agent.py,sha256=fSkWWZoactdsmz0NNZTAIMW08RnJrc8wr8ebF41g9Ps,13717
227
+ ultracart/model/conversation_pbx_call_ai_cost.py,sha256=TTeNbika57NRXRwdRi2jLsAXLKkF-dJFxUXYd1mCVG4,12395
228
+ ultracart/model/conversation_pbx_call_ai_engagement.py,sha256=vs3dCslhQiFkp-bxY00S4TBuPD20wR4h_WxL1fq8W-c,15007
229
+ ultracart/model/conversation_pbx_call_ai_tool_call.py,sha256=jdcp3P854HXmQ6WOMu8c_zJVtxvLZS2CVr0NTS7UyIo,14274
230
+ ultracart/model/conversation_pbx_call_ai_whisper.py,sha256=AkdmZLdBC6LI9n9RaS4PfMQG-1qJXNG_tiq-LHT52qA,12368
231
+ ultracart/model/conversation_pbx_call_caller.py,sha256=Oo1Y8XzD-kMDYMI2hTPjhmgGE3jKGystR-8eCCMihGE,12647
232
+ ultracart/model/conversation_pbx_call_financial.py,sha256=TfXdBa9tPABceQk-3WCQ3xdNNQ5J6Ak1VBLuvqvHjt4,13533
233
+ ultracart/model/conversation_pbx_call_hold.py,sha256=XkLfGRN3TH3ZK9rdgbylTJ5RyPvGt4dMWAjKEJHKl5I,12475
234
+ ultracart/model/conversation_pbx_call_queue.py,sha256=jkPfG32PA6lYZTRZyip50MuUzGgyx8nkSRXhBPUGPG0,13062
235
+ ultracart/model/conversation_pbx_call_recording.py,sha256=XliqpVcmPZO_t80fH0Uh2WUv-Xa5GtNGIh7LHj3OPqM,13558
236
+ ultracart/model/conversation_pbx_call_response.py,sha256=2okpBJruGfW3y4GCtVxbPU_dLB38zjArRSTkBXke1z0,12856
237
+ ultracart/model/conversation_pbx_call_routing.py,sha256=lOh7BnLOREmo6L8t3OQiBw52xibaM8DoSAiNEkwhcz0,12219
238
+ ultracart/model/conversation_pbx_call_search_request.py,sha256=e3opMlhs2LC3Dvnq5U9fVniA4_5NjeZ6GDRnBBAGUVw,16159
239
+ ultracart/model/conversation_pbx_call_search_response.py,sha256=5h1Ap6m_k2AaHT62ZsvlDhv6dpv4Ujr-EKB-Xhxpdl4,12899
240
+ ultracart/model/conversation_pbx_call_timeline.py,sha256=6a2pZegEaIMK8n0g-pfaxN-N8NT0YJo27c8Shuyrm4M,13189
241
+ ultracart/model/conversation_pbx_call_transcript.py,sha256=-puf5p0fVII9n0wsh--VvKnX6vb1hIo7R0NEXXBUKMk,13737
242
+ ultracart/model/conversation_pbx_call_transcript_segment.py,sha256=QiX8Mz1dm_IwX6ptf4WVdq9g18k2Ky-VUNMD_E1A1k0,13304
243
+ ultracart/model/conversation_pbx_call_transfer.py,sha256=yCK5i204wsht-gi6vKOWEawBkDOAh65vlZu56ykB4wE,12883
225
244
  ultracart/model/conversation_pbx_customer_snapshot_request.py,sha256=NX_L4Dnn2vkE0LJWKuHU_s_opzpzxVvoZIyuULwH7bo,13442
226
245
  ultracart/model/conversation_pbx_customer_snapshot_response.py,sha256=altaQBJHMquhMUViFRjvXY8c8BmPLs6KHRCzW_Ek0tg,13448
227
- ultracart/model/conversation_pbx_hardware_phone.py,sha256=j6_oTLXjEPQ9S5yv2d6nVh3WMMpY-prBbnB1a5xfOJM,15591
246
+ ultracart/model/conversation_pbx_hardware_phone.py,sha256=OX34Q_2QcxvWa75umD1N95gxnOIxjO1qLp3990kPdSM,16953
228
247
  ultracart/model/conversation_pbx_hardware_phone_response.py,sha256=mZ2zkha3QnYaSjqlhIQOIpwzxuI7cQb_jys7bm_oUOw,12997
229
248
  ultracart/model/conversation_pbx_hardware_phones_response.py,sha256=37Z2Ipn0n8nTfN78i_vyPd6Ce9KoAw_u3TWBakxRY4I,11830
230
249
  ultracart/model/conversation_pbx_menu.py,sha256=Rc8FHYvtAppQYGBCNOdfVz5S4ouV4SVU6pQXxhPHHrg,15421
@@ -234,11 +253,11 @@ ultracart/model/conversation_pbx_menus_response.py,sha256=b7aNcBBXfAlXGxlX0LXcHq
234
253
  ultracart/model/conversation_pbx_phone_manufacturer.py,sha256=svVVhjGb5IRgTW7ZHhfLF8Bk-41QM1t1z_dVvjjt8to,12160
235
254
  ultracart/model/conversation_pbx_phone_manufacturers_response.py,sha256=SmJhVl8B6GheL1QWIqu308dWfXcb4hc8wIPB9TRewfE,13041
236
255
  ultracart/model/conversation_pbx_phone_model.py,sha256=0-uXEQf0ofvIiDSZGyJy9qN2EGItvv_kMui4ITyx19I,11622
237
- ultracart/model/conversation_pbx_phone_number.py,sha256=YrH1Ae7LNF46qESHl1WzU2BLeWWGA6ZaNJhMhzH0re0,14219
256
+ ultracart/model/conversation_pbx_phone_number.py,sha256=vx4hNN-ThqlKSRS_jdKlEmSTaMWrdYzcC21smcHdl6g,14568
238
257
  ultracart/model/conversation_pbx_phone_number_purchase_request.py,sha256=nw2gAGvlZ7RDRskGdJU8w391UHUnNE1CCrVG5NfnqgI,13332
239
258
  ultracart/model/conversation_pbx_phone_number_response.py,sha256=FjbU6Rqy6J3eT3Jkhm32Wt47V0DxgR9-TPL4vq7k-hs,12967
240
259
  ultracart/model/conversation_pbx_phone_numbers_response.py,sha256=rYihQnA17xnRi69J5HL8A8WPPhpEsis9cPvWmXRbJVQ,12981
241
- ultracart/model/conversation_pbx_queue.py,sha256=ldTyjekKV9yG43FygWYdaJBpDnG3e7QUVsZLvkGUZ-g,20164
260
+ ultracart/model/conversation_pbx_queue.py,sha256=C6TH95NAu_6N9nXIK_WBQHU6vTvnFhcz3B24RWahmlw,20570
242
261
  ultracart/model/conversation_pbx_queue_members.py,sha256=05KtH79B4H8imx-lfd4hlrrrcbCoXrpK2p0JmHUOr9c,11635
243
262
  ultracart/model/conversation_pbx_queue_response.py,sha256=xzYGTLoM4wtTuxNOu_pabjyM3qKxTGwX3p4cC3imGhs,12871
244
263
  ultracart/model/conversation_pbx_queues_response.py,sha256=TYpY1yzuSZnjgzNoWudPEAyqWIHzsmWvYdVBGcQZwxc,12885
@@ -946,9 +965,9 @@ ultracart/model/workflow_tasks_response.py,sha256=KmHe72xKnZiS9CemBr5hluY5EsU9_x
946
965
  ultracart/model/workflow_user.py,sha256=gkQIeMSIhawpz5wtpTJ8Lof_Td0IrwG0KZF6catE41k,11903
947
966
  ultracart/model/workflow_user_response.py,sha256=TKfMu5vF1fXlV8mvxRFhvk6WNdGce2T8a4vFycQvuhQ,12785
948
967
  ultracart/model/workflow_users_response.py,sha256=3Y7L1oHc2-HOvl1pDdcnl9xHKYLGblKpKdbkPBh2u68,13059
949
- ultracart/models/__init__.py,sha256=cc3jVIBaHBKXz4A-ybgZyio8rkI_rj5nyA8p5JLW5zY,71976
950
- ultracart_rest_sdk-4.1.49.dist-info/LICENSE,sha256=4DukHX-rIHAHaf5BGLq1DYAMt0-ZA1OgXS9f_xwig2M,11558
951
- ultracart_rest_sdk-4.1.49.dist-info/METADATA,sha256=D4c9LKsnBlKYSgt9f6Rsard5YSZ7XQLU67tE2XyeT8s,402
952
- ultracart_rest_sdk-4.1.49.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
953
- ultracart_rest_sdk-4.1.49.dist-info/top_level.txt,sha256=90IoRqV6KX58jTyx9MwEBqh4j38_10hWrrvqsmXWZYo,10
954
- ultracart_rest_sdk-4.1.49.dist-info/RECORD,,
968
+ ultracart/models/__init__.py,sha256=X-zIVVFhvPoD7R9lt6CE0N3u4n0M8HcecrP0KcXipQQ,73652
969
+ ultracart_rest_sdk-4.1.55.dist-info/LICENSE,sha256=4DukHX-rIHAHaf5BGLq1DYAMt0-ZA1OgXS9f_xwig2M,11558
970
+ ultracart_rest_sdk-4.1.55.dist-info/METADATA,sha256=i0yeMB0BBhsHIfTdk0ydbBBEYAzdx5rRLDgKQ3T_LWc,402
971
+ ultracart_rest_sdk-4.1.55.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
972
+ ultracart_rest_sdk-4.1.55.dist-info/top_level.txt,sha256=90IoRqV6KX58jTyx9MwEBqh4j38_10hWrrvqsmXWZYo,10
973
+ ultracart_rest_sdk-4.1.55.dist-info/RECORD,,