ultracart_api 4.1.51 → 4.1.54

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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -2
  3. data/docs/ConversationApi.md +111 -0
  4. data/docs/ConversationPbxAgent.md +2 -0
  5. data/docs/ConversationPbxCall.md +60 -0
  6. data/docs/ConversationPbxCallAgent.md +34 -0
  7. data/docs/ConversationPbxCallAiCost.md +24 -0
  8. data/docs/ConversationPbxCallAiEngagement.md +36 -0
  9. data/docs/ConversationPbxCallAiToolCall.md +34 -0
  10. data/docs/ConversationPbxCallAiWhisper.md +24 -0
  11. data/docs/ConversationPbxCallCaller.md +26 -0
  12. data/docs/ConversationPbxCallFinancial.md +30 -0
  13. data/docs/ConversationPbxCallHold.md +24 -0
  14. data/docs/ConversationPbxCallQueue.md +28 -0
  15. data/docs/ConversationPbxCallRecording.md +30 -0
  16. data/docs/ConversationPbxCallResponse.md +26 -0
  17. data/docs/ConversationPbxCallRouting.md +22 -0
  18. data/docs/ConversationPbxCallSearchRequest.md +48 -0
  19. data/docs/ConversationPbxCallSearchResponse.md +26 -0
  20. data/docs/ConversationPbxCallTimeline.md +28 -0
  21. data/docs/ConversationPbxCallTranscript.md +30 -0
  22. data/docs/ConversationPbxCallTranscriptSegment.md +30 -0
  23. data/docs/ConversationPbxCallTransfer.md +26 -0
  24. data/docs/ConversationPbxPhoneNumber.md +2 -0
  25. data/lib/ultracart_api/api/conversation_api.rb +142 -0
  26. data/lib/ultracart_api/models/conversation_pbx_agent.rb +11 -1
  27. data/lib/ultracart_api/models/conversation_pbx_call.rb +438 -0
  28. data/lib/ultracart_api/models/conversation_pbx_call_agent.rb +300 -0
  29. data/lib/ultracart_api/models/conversation_pbx_call_ai_cost.rb +250 -0
  30. data/lib/ultracart_api/models/conversation_pbx_call_ai_engagement.rb +347 -0
  31. data/lib/ultracart_api/models/conversation_pbx_call_ai_tool_call.rb +300 -0
  32. data/lib/ultracart_api/models/conversation_pbx_call_ai_whisper.rb +250 -0
  33. data/lib/ultracart_api/models/conversation_pbx_call_caller.rb +260 -0
  34. data/lib/ultracart_api/models/conversation_pbx_call_financial.rb +280 -0
  35. data/lib/ultracart_api/models/conversation_pbx_call_hold.rb +250 -0
  36. data/lib/ultracart_api/models/conversation_pbx_call_queue.rb +270 -0
  37. data/lib/ultracart_api/models/conversation_pbx_call_recording.rb +279 -0
  38. data/lib/ultracart_api/models/conversation_pbx_call_response.rb +256 -0
  39. data/lib/ultracart_api/models/conversation_pbx_call_routing.rb +239 -0
  40. data/lib/ultracart_api/models/conversation_pbx_call_search_request.rb +376 -0
  41. data/lib/ultracart_api/models/conversation_pbx_call_search_response.rb +259 -0
  42. data/lib/ultracart_api/models/conversation_pbx_call_timeline.rb +270 -0
  43. data/lib/ultracart_api/models/conversation_pbx_call_transcript.rb +282 -0
  44. data/lib/ultracart_api/models/conversation_pbx_call_transcript_segment.rb +314 -0
  45. data/lib/ultracart_api/models/conversation_pbx_call_transfer.rb +260 -0
  46. data/lib/ultracart_api/models/conversation_pbx_phone_number.rb +11 -1
  47. data/lib/ultracart_api/version.rb +1 -1
  48. data/lib/ultracart_api.rb +19 -0
  49. metadata +40 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68fd51be8446e7a1d91444c1cef061ab836933aa4f0ddc64d5ed46d3129a9d52
4
- data.tar.gz: 92916d0ed00e5d6455810e5b48435e763c9c0d4c2abb02e54017652028a2d9ae
3
+ metadata.gz: a6b2fd9640da7cf6148e8ca1170eed38dc36d63c070ffa69f07e24d70b835f6f
4
+ data.tar.gz: f152949d171b1e19d72390fc71563aed2c3efda44e5ac384a9965f347a564f7c
5
5
  SHA512:
6
- metadata.gz: 06b562960fa069ff003567507683ffe2668e795e1ffe7c5bb820ea1083dcc8dd3c2a8fdb51e76fa4e573413a1ce5d3b2e8c2b676cf6eb3dfe80dff196c673e48
7
- data.tar.gz: 4b559a715885b6568716eab7a835f7b09e1bf75da719cd31a908a421fb6d2172f7a30c0d8934b03ac75ad38741a8abd681522d6dab20831b534fdd59e86cca19
6
+ metadata.gz: d430bf4c3631d5950134654e4789f87ab2d02be9e8930514e6ae17b71b49934ee4b5309953473ce38e1761432ef5434885c767f1c290157d77beeaae71df414b
7
+ data.tar.gz: 2c4656427bce2e2f1678866e110210b7d5d3e041ef0156bfe616076142ea1348420aaa0a04164379851bbd81029691816d0718e5701d5470e5a50c8e62b59f62
data/README.md CHANGED
@@ -7,7 +7,7 @@ Note: Every method has a sample for every language. See https://github.com/Ultr
7
7
  This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
8
8
 
9
9
  - API version: 2.0.0
10
- - Package version: 4.1.51
10
+ - Package version: 4.1.54
11
11
  - Build package: org.openapitools.codegen.languages.RubyClientCodegen
12
12
  - For more information, please visit [http://www.ultracart.com/api/](http://www.ultracart.com/api/)
13
13
 
@@ -16,7 +16,7 @@ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-g
16
16
  gemfile:
17
17
 
18
18
  ```shell
19
- gem 'ultracart_api', '4.1.51'
19
+ gem 'ultracart_api', '4.1.54'
20
20
  ```
21
21
 
22
22
  install:
@@ -180,6 +180,7 @@ Class | Method | HTTP request | Description
180
180
  *UltracartClient::ConversationApi* | [**get_pbx_audio**](docs/ConversationApi.md#get_pbx_audio) | **GET** /conversation/pbx/audio/{conversationPbxAudioUuid} | Get pbx audio
181
181
  *UltracartClient::ConversationApi* | [**get_pbx_audio_usage**](docs/ConversationApi.md#get_pbx_audio_usage) | **GET** /conversation/pbx/audio/{conversationPbxAudioUuid}/usage | Get pbx audio usage
182
182
  *UltracartClient::ConversationApi* | [**get_pbx_audios**](docs/ConversationApi.md#get_pbx_audios) | **GET** /conversation/pbx/audio | Get pbx audios
183
+ *UltracartClient::ConversationApi* | [**get_pbx_call**](docs/ConversationApi.md#get_pbx_call) | **GET** /conversation/pbx/call/{callUuid} | Get pbx call record
183
184
  *UltracartClient::ConversationApi* | [**get_pbx_hardware_phone**](docs/ConversationApi.md#get_pbx_hardware_phone) | **GET** /conversation/pbx/hardware_phone/{conversationPbxHardwarePhoneUuid} | Get pbx hardware phone
184
185
  *UltracartClient::ConversationApi* | [**get_pbx_hardware_phone_manufacturers**](docs/ConversationApi.md#get_pbx_hardware_phone_manufacturers) | **GET** /conversation/pbx/hardware_phone/manufacturers | Get pbx hardware phone manufacturers
185
186
  *UltracartClient::ConversationApi* | [**get_pbx_hardware_phones**](docs/ConversationApi.md#get_pbx_hardware_phones) | **GET** /conversation/pbx/hardware_phone | Get pbx hardware phones
@@ -223,6 +224,7 @@ Class | Method | HTTP request | Description
223
224
  *UltracartClient::ConversationApi* | [**reset_conversation_pbx_queue_statistics**](docs/ConversationApi.md#reset_conversation_pbx_queue_statistics) | **POST** /conversation/pbx/queues/{queue_uuid}/reset_statistics | reset statistics within the queue
224
225
  *UltracartClient::ConversationApi* | [**search_conversation_canned_messages**](docs/ConversationApi.md#search_conversation_canned_messages) | **POST** /conversation/canned_messages/search | Search for canned messages by short_code
225
226
  *UltracartClient::ConversationApi* | [**search_pbx_available_phone_numbers**](docs/ConversationApi.md#search_pbx_available_phone_numbers) | **GET** /conversation/pbx/phone_number/search | Search for available phone numbers
227
+ *UltracartClient::ConversationApi* | [**search_pbx_calls**](docs/ConversationApi.md#search_pbx_calls) | **POST** /conversation/pbx/call/search | Search pbx call records
226
228
  *UltracartClient::ConversationApi* | [**sms_unsubscribe_conversation**](docs/ConversationApi.md#sms_unsubscribe_conversation) | **PUT** /conversation/conversations/{conversation_uuid}/sms_unsubscribe | Unsubscribe any SMS participants in this conversation
227
229
  *UltracartClient::ConversationApi* | [**start_conversation**](docs/ConversationApi.md#start_conversation) | **PUT** /conversation/conversations | Start a conversation
228
230
  *UltracartClient::ConversationApi* | [**update_agent_profile**](docs/ConversationApi.md#update_agent_profile) | **PUT** /conversation/agent/profile | Update agent profile
@@ -836,6 +838,25 @@ Class | Method | HTTP request | Description
836
838
  - [UltracartClient::ConversationPbxAudiosResponse](docs/ConversationPbxAudiosResponse.md)
837
839
  - [UltracartClient::ConversationPbxAvailablePhoneNumber](docs/ConversationPbxAvailablePhoneNumber.md)
838
840
  - [UltracartClient::ConversationPbxAvailablePhoneNumbersResponse](docs/ConversationPbxAvailablePhoneNumbersResponse.md)
841
+ - [UltracartClient::ConversationPbxCall](docs/ConversationPbxCall.md)
842
+ - [UltracartClient::ConversationPbxCallAgent](docs/ConversationPbxCallAgent.md)
843
+ - [UltracartClient::ConversationPbxCallAiCost](docs/ConversationPbxCallAiCost.md)
844
+ - [UltracartClient::ConversationPbxCallAiEngagement](docs/ConversationPbxCallAiEngagement.md)
845
+ - [UltracartClient::ConversationPbxCallAiToolCall](docs/ConversationPbxCallAiToolCall.md)
846
+ - [UltracartClient::ConversationPbxCallAiWhisper](docs/ConversationPbxCallAiWhisper.md)
847
+ - [UltracartClient::ConversationPbxCallCaller](docs/ConversationPbxCallCaller.md)
848
+ - [UltracartClient::ConversationPbxCallFinancial](docs/ConversationPbxCallFinancial.md)
849
+ - [UltracartClient::ConversationPbxCallHold](docs/ConversationPbxCallHold.md)
850
+ - [UltracartClient::ConversationPbxCallQueue](docs/ConversationPbxCallQueue.md)
851
+ - [UltracartClient::ConversationPbxCallRecording](docs/ConversationPbxCallRecording.md)
852
+ - [UltracartClient::ConversationPbxCallResponse](docs/ConversationPbxCallResponse.md)
853
+ - [UltracartClient::ConversationPbxCallRouting](docs/ConversationPbxCallRouting.md)
854
+ - [UltracartClient::ConversationPbxCallSearchRequest](docs/ConversationPbxCallSearchRequest.md)
855
+ - [UltracartClient::ConversationPbxCallSearchResponse](docs/ConversationPbxCallSearchResponse.md)
856
+ - [UltracartClient::ConversationPbxCallTimeline](docs/ConversationPbxCallTimeline.md)
857
+ - [UltracartClient::ConversationPbxCallTranscript](docs/ConversationPbxCallTranscript.md)
858
+ - [UltracartClient::ConversationPbxCallTranscriptSegment](docs/ConversationPbxCallTranscriptSegment.md)
859
+ - [UltracartClient::ConversationPbxCallTransfer](docs/ConversationPbxCallTransfer.md)
839
860
  - [UltracartClient::ConversationPbxCustomerSnapshotRequest](docs/ConversationPbxCustomerSnapshotRequest.md)
840
861
  - [UltracartClient::ConversationPbxCustomerSnapshotResponse](docs/ConversationPbxCustomerSnapshotResponse.md)
841
862
  - [UltracartClient::ConversationPbxHardwarePhone](docs/ConversationPbxHardwarePhone.md)
@@ -1635,6 +1656,9 @@ Not every change is committed to every SDK.
1635
1656
 
1636
1657
  | Version | Date | Comments |
1637
1658
  | --: | :-: | --- |
1659
+ | 4.1.54 | 02/02/2026 | build error fix |
1660
+ | 4.1.53 | 02/02/2026 | conversations default pricing phone number settings |
1661
+ | 4.1.52 | 01/31/2026 | conversation - pbx call log objects |
1638
1662
  | 4.1.51 | 01/30/2026 | conversations queue setting for automatic AI coaching |
1639
1663
  | 4.1.50 | 01/27/2026 | conversations - refinements to support hardware phones |
1640
1664
  | 4.1.49 | 01/26/2026 | no changes - testing changes to build automation |
@@ -55,6 +55,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
55
55
  | [**get_pbx_audio**](ConversationApi.md#get_pbx_audio) | **GET** /conversation/pbx/audio/{conversationPbxAudioUuid} | Get pbx audio |
56
56
  | [**get_pbx_audio_usage**](ConversationApi.md#get_pbx_audio_usage) | **GET** /conversation/pbx/audio/{conversationPbxAudioUuid}/usage | Get pbx audio usage |
57
57
  | [**get_pbx_audios**](ConversationApi.md#get_pbx_audios) | **GET** /conversation/pbx/audio | Get pbx audios |
58
+ | [**get_pbx_call**](ConversationApi.md#get_pbx_call) | **GET** /conversation/pbx/call/{callUuid} | Get pbx call record |
58
59
  | [**get_pbx_hardware_phone**](ConversationApi.md#get_pbx_hardware_phone) | **GET** /conversation/pbx/hardware_phone/{conversationPbxHardwarePhoneUuid} | Get pbx hardware phone |
59
60
  | [**get_pbx_hardware_phone_manufacturers**](ConversationApi.md#get_pbx_hardware_phone_manufacturers) | **GET** /conversation/pbx/hardware_phone/manufacturers | Get pbx hardware phone manufacturers |
60
61
  | [**get_pbx_hardware_phones**](ConversationApi.md#get_pbx_hardware_phones) | **GET** /conversation/pbx/hardware_phone | Get pbx hardware phones |
@@ -98,6 +99,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
98
99
  | [**reset_conversation_pbx_queue_statistics**](ConversationApi.md#reset_conversation_pbx_queue_statistics) | **POST** /conversation/pbx/queues/{queue_uuid}/reset_statistics | reset statistics within the queue |
99
100
  | [**search_conversation_canned_messages**](ConversationApi.md#search_conversation_canned_messages) | **POST** /conversation/canned_messages/search | Search for canned messages by short_code |
100
101
  | [**search_pbx_available_phone_numbers**](ConversationApi.md#search_pbx_available_phone_numbers) | **GET** /conversation/pbx/phone_number/search | Search for available phone numbers |
102
+ | [**search_pbx_calls**](ConversationApi.md#search_pbx_calls) | **POST** /conversation/pbx/call/search | Search pbx call records |
101
103
  | [**sms_unsubscribe_conversation**](ConversationApi.md#sms_unsubscribe_conversation) | **PUT** /conversation/conversations/{conversation_uuid}/sms_unsubscribe | Unsubscribe any SMS participants in this conversation |
102
104
  | [**start_conversation**](ConversationApi.md#start_conversation) | **PUT** /conversation/conversations | Start a conversation |
103
105
  | [**update_agent_profile**](ConversationApi.md#update_agent_profile) | **PUT** /conversation/agent/profile | Update agent profile |
@@ -2844,6 +2846,59 @@ This endpoint does not need any parameter.
2844
2846
  - **Accept**: application/json
2845
2847
 
2846
2848
 
2849
+ ## get_pbx_call
2850
+
2851
+ > <ConversationPbxCallResponse> get_pbx_call(call_uuid)
2852
+
2853
+ Get pbx call record
2854
+
2855
+ Retrieve a single PBX call record with full details
2856
+
2857
+
2858
+ ### Examples
2859
+
2860
+
2861
+ (No example for this operation).
2862
+
2863
+
2864
+ #### Using the get_pbx_call_with_http_info variant
2865
+
2866
+ This returns an Array which contains the response data, status code and headers.
2867
+
2868
+ > <Array(<ConversationPbxCallResponse>, Integer, Hash)> get_pbx_call_with_http_info(call_uuid)
2869
+
2870
+ ```ruby
2871
+ begin
2872
+ # Get pbx call record
2873
+ data, status_code, headers = api_instance.get_pbx_call_with_http_info(call_uuid)
2874
+ p status_code # => 2xx
2875
+ p headers # => { ... }
2876
+ p data # => <ConversationPbxCallResponse>
2877
+ rescue UltracartClient::ApiError => e
2878
+ puts "Error when calling ConversationApi->get_pbx_call_with_http_info: #{e}"
2879
+ end
2880
+ ```
2881
+
2882
+ ### Parameters
2883
+
2884
+ | Name | Type | Description | Notes |
2885
+ | ---- | ---- | ----------- | ----- |
2886
+ | **call_uuid** | **String** | | |
2887
+
2888
+ ### Return type
2889
+
2890
+ [**ConversationPbxCallResponse**](ConversationPbxCallResponse.md)
2891
+
2892
+ ### Authorization
2893
+
2894
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
2895
+
2896
+ ### HTTP request headers
2897
+
2898
+ - **Content-Type**: Not defined
2899
+ - **Accept**: application/json
2900
+
2901
+
2847
2902
  ## get_pbx_hardware_phone
2848
2903
 
2849
2904
  > <ConversationPbxHardwarePhoneResponse> get_pbx_hardware_phone(conversation_pbx_hardware_phone_uuid)
@@ -5145,6 +5200,62 @@ end
5145
5200
  - **Accept**: application/json
5146
5201
 
5147
5202
 
5203
+ ## search_pbx_calls
5204
+
5205
+ > <ConversationPbxCallSearchResponse> search_pbx_calls(search_request, opts)
5206
+
5207
+ Search pbx call records
5208
+
5209
+ Search and list PBX call records with filtering, sorting, and pagination
5210
+
5211
+
5212
+ ### Examples
5213
+
5214
+
5215
+ (No example for this operation).
5216
+
5217
+
5218
+ #### Using the search_pbx_calls_with_http_info variant
5219
+
5220
+ This returns an Array which contains the response data, status code and headers.
5221
+
5222
+ > <Array(<ConversationPbxCallSearchResponse>, Integer, Hash)> search_pbx_calls_with_http_info(search_request, opts)
5223
+
5224
+ ```ruby
5225
+ begin
5226
+ # Search pbx call records
5227
+ data, status_code, headers = api_instance.search_pbx_calls_with_http_info(search_request, opts)
5228
+ p status_code # => 2xx
5229
+ p headers # => { ... }
5230
+ p data # => <ConversationPbxCallSearchResponse>
5231
+ rescue UltracartClient::ApiError => e
5232
+ puts "Error when calling ConversationApi->search_pbx_calls_with_http_info: #{e}"
5233
+ end
5234
+ ```
5235
+
5236
+ ### Parameters
5237
+
5238
+ | Name | Type | Description | Notes |
5239
+ | ---- | ---- | ----------- | ----- |
5240
+ | **search_request** | [**ConversationPbxCallSearchRequest**](ConversationPbxCallSearchRequest.md) | Search Request | |
5241
+ | **_limit** | **Integer** | The maximum number of records to return on this one API call. (Maximum 200) | [optional][default to 100] |
5242
+ | **_offset** | **Integer** | Pagination of the record set. Offset is a zero based index. | [optional][default to 0] |
5243
+ | **_sort** | **String** | The sort order of the calls. | [optional] |
5244
+
5245
+ ### Return type
5246
+
5247
+ [**ConversationPbxCallSearchResponse**](ConversationPbxCallSearchResponse.md)
5248
+
5249
+ ### Authorization
5250
+
5251
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
5252
+
5253
+ ### HTTP request headers
5254
+
5255
+ - **Content-Type**: application/json
5256
+ - **Accept**: application/json
5257
+
5258
+
5148
5259
  ## sms_unsubscribe_conversation
5149
5260
 
5150
5261
  > sms_unsubscribe_conversation(conversation_uuid)
@@ -8,6 +8,7 @@
8
8
  | **call_routing_preference** | **String** | The call routing preference | [optional] |
9
9
  | **cellphone** | **String** | Cellphone number of agent in E.164 format | [optional] |
10
10
  | **conversation_pbx_agent_uuid** | **String** | Conversation Pbx Agent unique identifier | [optional] |
11
+ | **default_phone_number_uuid** | **String** | The default phone number that this agent should dial out to the PSTN with. | [optional] |
11
12
  | **extension** | **Integer** | Extension | [optional] |
12
13
  | **full_name** | **String** | Full name | [optional] |
13
14
  | **hardware_phone_uuids** | **Array&lt;String&gt;** | Array of hardware phones UUIDs associated with this agent | [optional] |
@@ -34,6 +35,7 @@ instance = UltracartClient::ConversationPbxAgent.new(
34
35
  call_routing_preference: null,
35
36
  cellphone: null,
36
37
  conversation_pbx_agent_uuid: null,
38
+ default_phone_number_uuid: null,
37
39
  extension: null,
38
40
  full_name: null,
39
41
  hardware_phone_uuids: null,
@@ -0,0 +1,60 @@
1
+ # UltracartClient::ConversationPbxCall
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **account_sid** | **String** | Twilio account SID | [optional] |
8
+ | **agents** | [**Array&lt;ConversationPbxCallAgent&gt;**](ConversationPbxCallAgent.md) | List of agents who participated in this call | [optional] |
9
+ | **ai_agent_engagements** | [**Array&lt;ConversationPbxCallAiEngagement&gt;**](ConversationPbxCallAiEngagement.md) | List of AI agent engagements during the call | [optional] |
10
+ | **call_sid** | **String** | Twilio call SID for the primary (customer) call leg | [optional] |
11
+ | **call_uuid** | **String** | Unique identifier for this call record | [optional] |
12
+ | **caller** | [**ConversationPbxCallCaller**](ConversationPbxCallCaller.md) | | [optional] |
13
+ | **conference_sid** | **String** | Twilio conference SID if this call used conferencing | [optional] |
14
+ | **created_at_dts** | **String** | Timestamp when the call record was created | [optional] |
15
+ | **customer_name** | **String** | Customer name associated with this call | [optional] |
16
+ | **customer_profile_oid** | **String** | UltraCart customer profile OID if the caller was matched to a customer | [optional] |
17
+ | **disposition** | **String** | Call disposition describing how the call ended | [optional] |
18
+ | **email** | **String** | Email address of the caller if known | [optional] |
19
+ | **financial** | [**ConversationPbxCallFinancial**](ConversationPbxCallFinancial.md) | | [optional] |
20
+ | **holds** | [**Array&lt;ConversationPbxCallHold&gt;**](ConversationPbxCallHold.md) | List of hold events during the call | [optional] |
21
+ | **merchant_id** | **String** | Merchant identifier | [optional] |
22
+ | **recording_sids** | **Array&lt;String&gt;** | List of all Twilio recording SIDs associated with this call | [optional] |
23
+ | **recordings** | [**Array&lt;ConversationPbxCallRecording&gt;**](ConversationPbxCallRecording.md) | List of recordings made during the call | [optional] |
24
+ | **routing** | [**ConversationPbxCallRouting**](ConversationPbxCallRouting.md) | | [optional] |
25
+ | **status** | **String** | Final status of the call | [optional] |
26
+ | **timeline** | [**ConversationPbxCallTimeline**](ConversationPbxCallTimeline.md) | | [optional] |
27
+ | **transfers** | [**Array&lt;ConversationPbxCallTransfer&gt;**](ConversationPbxCallTransfer.md) | List of transfer events during the call | [optional] |
28
+ | **updated_at_dts** | **String** | Timestamp when the call record was last updated | [optional] |
29
+
30
+ ## Example
31
+
32
+ ```ruby
33
+ require 'ultracart_api'
34
+
35
+ instance = UltracartClient::ConversationPbxCall.new(
36
+ account_sid: null,
37
+ agents: null,
38
+ ai_agent_engagements: null,
39
+ call_sid: null,
40
+ call_uuid: null,
41
+ caller: null,
42
+ conference_sid: null,
43
+ created_at_dts: null,
44
+ customer_name: null,
45
+ customer_profile_oid: null,
46
+ disposition: null,
47
+ email: null,
48
+ financial: null,
49
+ holds: null,
50
+ merchant_id: null,
51
+ recording_sids: null,
52
+ recordings: null,
53
+ routing: null,
54
+ status: null,
55
+ timeline: null,
56
+ transfers: null,
57
+ updated_at_dts: null
58
+ )
59
+ ```
60
+
@@ -0,0 +1,34 @@
1
+ # UltracartClient::ConversationPbxCallAgent
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **agent_extension** | **String** | Agent&#39;s phone extension | [optional] |
8
+ | **agent_id** | **String** | Unique identifier for the agent | [optional] |
9
+ | **agent_name** | **String** | Display name of the agent | [optional] |
10
+ | **answered** | **Boolean** | Whether the agent answered the call | [optional] |
11
+ | **call_sid** | **String** | Twilio call SID for the agent&#39;s call leg | [optional] |
12
+ | **joined_at_dts** | **String** | Timestamp when the agent joined the call | [optional] |
13
+ | **left_at_dts** | **String** | Timestamp when the agent left the call | [optional] |
14
+ | **role** | **String** | Role of the agent in the call | [optional] |
15
+ | **worker_sid** | **String** | Twilio TaskRouter worker SID | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'ultracart_api'
21
+
22
+ instance = UltracartClient::ConversationPbxCallAgent.new(
23
+ agent_extension: null,
24
+ agent_id: null,
25
+ agent_name: null,
26
+ answered: null,
27
+ call_sid: null,
28
+ joined_at_dts: null,
29
+ left_at_dts: null,
30
+ role: null,
31
+ worker_sid: null
32
+ )
33
+ ```
34
+
@@ -0,0 +1,24 @@
1
+ # UltracartClient::ConversationPbxCallAiCost
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **amount** | **Float** | Total cost amount in the specified currency | [optional] |
8
+ | **billed_minutes** | **Float** | Number of minutes billed for AI usage | [optional] |
9
+ | **cost_per_minute** | **Float** | Cost per minute for AI usage | [optional] |
10
+ | **currency** | **String** | Currency code (always USD) | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ultracart_api'
16
+
17
+ instance = UltracartClient::ConversationPbxCallAiCost.new(
18
+ amount: null,
19
+ billed_minutes: null,
20
+ cost_per_minute: null,
21
+ currency: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,36 @@
1
+ # UltracartClient::ConversationPbxCallAiEngagement
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **agent_name** | **String** | Display name of the AI agent | [optional] |
8
+ | **agent_uuid** | **String** | UUID of the AI agent configuration used | [optional] |
9
+ | **cost** | [**ConversationPbxCallAiCost**](ConversationPbxCallAiCost.md) | | [optional] |
10
+ | **ended_at_dts** | **String** | Timestamp when the AI engagement ended | [optional] |
11
+ | **engagement_type** | **String** | Type of AI engagement | [optional] |
12
+ | **session_uuid** | **String** | Unique identifier for this AI engagement session | [optional] |
13
+ | **started_at_dts** | **String** | Timestamp when the AI engagement started | [optional] |
14
+ | **status** | **String** | Status of the AI engagement | [optional] |
15
+ | **tool_calls** | [**Array&lt;ConversationPbxCallAiToolCall&gt;**](ConversationPbxCallAiToolCall.md) | List of tool calls made by the AI agent during this engagement | [optional] |
16
+ | **whispers** | [**Array&lt;ConversationPbxCallAiWhisper&gt;**](ConversationPbxCallAiWhisper.md) | List of coaching whispers sent during this engagement | [optional] |
17
+
18
+ ## Example
19
+
20
+ ```ruby
21
+ require 'ultracart_api'
22
+
23
+ instance = UltracartClient::ConversationPbxCallAiEngagement.new(
24
+ agent_name: null,
25
+ agent_uuid: null,
26
+ cost: null,
27
+ ended_at_dts: null,
28
+ engagement_type: null,
29
+ session_uuid: null,
30
+ started_at_dts: null,
31
+ status: null,
32
+ tool_calls: null,
33
+ whispers: null
34
+ )
35
+ ```
36
+
@@ -0,0 +1,34 @@
1
+ # UltracartClient::ConversationPbxCallAiToolCall
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **called_at_dts** | **String** | Timestamp when the tool was called | [optional] |
8
+ | **completed_at_dts** | **String** | Timestamp when the tool call completed | [optional] |
9
+ | **duration_ms** | **Integer** | Duration of the tool call in milliseconds | [optional] |
10
+ | **error_message** | **String** | Error message if the tool call failed | [optional] |
11
+ | **parameters** | **Object** | Parameters passed to the tool (structure varies by tool) | [optional] |
12
+ | **result** | **Object** | Result returned by the tool (structure varies by tool) | [optional] |
13
+ | **success** | **Boolean** | Whether the tool call succeeded | [optional] |
14
+ | **tool_call_uuid** | **String** | Unique identifier for this tool call | [optional] |
15
+ | **tool_name** | **String** | Name of the tool that was called | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'ultracart_api'
21
+
22
+ instance = UltracartClient::ConversationPbxCallAiToolCall.new(
23
+ called_at_dts: null,
24
+ completed_at_dts: null,
25
+ duration_ms: null,
26
+ error_message: null,
27
+ parameters: null,
28
+ result: null,
29
+ success: null,
30
+ tool_call_uuid: null,
31
+ tool_name: null
32
+ )
33
+ ```
34
+
@@ -0,0 +1,24 @@
1
+ # UltracartClient::ConversationPbxCallAiWhisper
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **message** | **String** | The whisper message content | [optional] |
8
+ | **priority** | **String** | Priority level of the whisper | [optional] |
9
+ | **whisper_uuid** | **String** | Unique identifier for this whisper | [optional] |
10
+ | **whispered_at_dts** | **String** | Timestamp when the whisper was sent | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ultracart_api'
16
+
17
+ instance = UltracartClient::ConversationPbxCallAiWhisper.new(
18
+ message: null,
19
+ priority: null,
20
+ whisper_uuid: null,
21
+ whispered_at_dts: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,26 @@
1
+ # UltracartClient::ConversationPbxCallCaller
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **caller_id** | **String** | Caller ID name if available | [optional] |
8
+ | **city** | **String** | City associated with the phone number | [optional] |
9
+ | **country** | **String** | Country associated with the phone number (ISO 3166-1 alpha-2) | [optional] |
10
+ | **phone_number** | **String** | Phone number in E.164 format | [optional] |
11
+ | **state** | **String** | State or province associated with the phone number | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'ultracart_api'
17
+
18
+ instance = UltracartClient::ConversationPbxCallCaller.new(
19
+ caller_id: null,
20
+ city: null,
21
+ country: null,
22
+ phone_number: null,
23
+ state: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,30 @@
1
+ # UltracartClient::ConversationPbxCallFinancial
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **ai_agent_billed_minutes** | **Float** | Total AI agent billed minutes for this call | [optional] |
8
+ | **ai_agent_cost** | **Float** | Total AI agent cost for this call | [optional] |
9
+ | **ai_agent_cost_currency** | **String** | Currency for AI agent cost | [optional] |
10
+ | **call_currency** | **String** | Currency for call price (default USD) | [optional] |
11
+ | **call_price** | **Float** | Twilio call cost | [optional] |
12
+ | **call_price_estimated** | **Boolean** | True if call price is a fallback-rate estimate, false if Twilio-confirmed | [optional] |
13
+ | **transcription_cost** | **Float** | AWS Transcribe transcription cost | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ultracart_api'
19
+
20
+ instance = UltracartClient::ConversationPbxCallFinancial.new(
21
+ ai_agent_billed_minutes: null,
22
+ ai_agent_cost: null,
23
+ ai_agent_cost_currency: null,
24
+ call_currency: null,
25
+ call_price: null,
26
+ call_price_estimated: null,
27
+ transcription_cost: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,24 @@
1
+ # UltracartClient::ConversationPbxCallHold
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **held_by_agent_id** | **String** | ID of the agent who placed the caller on hold | [optional] |
8
+ | **hold_duration_seconds** | **Integer** | Duration of the hold in seconds | [optional] |
9
+ | **hold_end_dts** | **String** | Timestamp when the hold ended | [optional] |
10
+ | **hold_start_dts** | **String** | Timestamp when the hold started | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ultracart_api'
16
+
17
+ instance = UltracartClient::ConversationPbxCallHold.new(
18
+ held_by_agent_id: null,
19
+ hold_duration_seconds: null,
20
+ hold_end_dts: null,
21
+ hold_start_dts: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,28 @@
1
+ # UltracartClient::ConversationPbxCallQueue
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **answered_at_dts** | **String** | Timestamp when the call was answered from the queue | [optional] |
8
+ | **entered_at_dts** | **String** | Timestamp when the call entered the queue | [optional] |
9
+ | **queue_name** | **String** | Display name of the queue | [optional] |
10
+ | **queue_uuid** | **String** | Unique identifier for the queue | [optional] |
11
+ | **result** | **String** | Result of queue routing (e.g., answered, abandoned, timeout) | [optional] |
12
+ | **wait_seconds** | **Integer** | Number of seconds the caller waited in the queue | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'ultracart_api'
18
+
19
+ instance = UltracartClient::ConversationPbxCallQueue.new(
20
+ answered_at_dts: null,
21
+ entered_at_dts: null,
22
+ queue_name: null,
23
+ queue_uuid: null,
24
+ result: null,
25
+ wait_seconds: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,30 @@
1
+ # UltracartClient::ConversationPbxCallRecording
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **channels** | **Integer** | Number of audio channels in the recording (1 for mono, 2 for stereo/dual-channel) | [optional] |
8
+ | **duration_seconds** | **Integer** | Duration of the recording in seconds | [optional] |
9
+ | **is_primary** | **Boolean** | Whether this is the primary recording for the call | [optional] |
10
+ | **recording_sid** | **String** | Twilio recording SID | [optional] |
11
+ | **recording_url** | **String** | URL to access the recording | [optional] |
12
+ | **status** | **String** | Status of the recording | [optional] |
13
+ | **transcript** | [**ConversationPbxCallTranscript**](ConversationPbxCallTranscript.md) | | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ultracart_api'
19
+
20
+ instance = UltracartClient::ConversationPbxCallRecording.new(
21
+ channels: null,
22
+ duration_seconds: null,
23
+ is_primary: null,
24
+ recording_sid: null,
25
+ recording_url: null,
26
+ status: null,
27
+ transcript: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,26 @@
1
+ # UltracartClient::ConversationPbxCallResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **call** | [**ConversationPbxCall**](ConversationPbxCall.md) | | [optional] |
8
+ | **error** | [**Error**](Error.md) | | [optional] |
9
+ | **metadata** | [**ResponseMetadata**](ResponseMetadata.md) | | [optional] |
10
+ | **success** | **Boolean** | Indicates if API call was successful | [optional] |
11
+ | **warning** | [**Warning**](Warning.md) | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'ultracart_api'
17
+
18
+ instance = UltracartClient::ConversationPbxCallResponse.new(
19
+ call: null,
20
+ error: null,
21
+ metadata: null,
22
+ success: null,
23
+ warning: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,22 @@
1
+ # UltracartClient::ConversationPbxCallRouting
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **call_type** | **String** | Type of call routing used | [optional] |
8
+ | **direction** | **String** | Direction of the call | [optional] |
9
+ | **queue** | [**ConversationPbxCallQueue**](ConversationPbxCallQueue.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'ultracart_api'
15
+
16
+ instance = UltracartClient::ConversationPbxCallRouting.new(
17
+ call_type: null,
18
+ direction: null,
19
+ queue: null
20
+ )
21
+ ```
22
+