ultracart_api 4.1.150 → 4.1.151

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0dd10e0e13b853be44db9716b0141fab32c531e40f176c6e6e116107da27464e
4
- data.tar.gz: 551f2e71eef3b0d331b0599f79113a70c50ce1e610135a6b4b1cb0ba34cc7431
3
+ metadata.gz: 264c6285dc9c3bb82c146898640ca02fc525273a9462e8337e50b33dc768ae76
4
+ data.tar.gz: 05ccae03d410d9581c6915ef9e5797dfe2396d5286ad813f81c8e8aeadafb9ca
5
5
  SHA512:
6
- metadata.gz: 1a1fea1e8d56f3a4ce8e45a3bec035bb1044e5fef96f3b3afc8eef8723c07d48f0f498e7d2c27b3e0cdf992876e0dd7db75cd16625fb94780cb6f0d87930cec0
7
- data.tar.gz: 18df8e1fdbf9bc225af078d8259641e2930491d5fbec6b3fcdf0b48a506ec17a35aa7ab20c99b57f7088e1097d790467058f032953b20b54915e1d90ca61c0ad
6
+ metadata.gz: 7fc804a4da9627b106475e373aa2f337a40a0d0dabd82d8aa9ac0bb33153a15c2b4c10b3555135201a31f44809f92fd974458152241b187bcee25076c726adf1
7
+ data.tar.gz: ecb3276f325660d99d01cec717abac3e18858e0ed40cafdbe416cdd632108c212fcb257d118d6e264e2db32a551703b70889eb4c7e718771612612b845b6216a
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.150
10
+ - Package version: 4.1.151
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.150'
19
+ gem 'ultracart_api', '4.1.151'
20
20
  ```
21
21
 
22
22
  install:
@@ -252,6 +252,7 @@ Class | Method | HTTP request | Description
252
252
  *UltracartClient::ConversationApi* | [**insert_pbx_time_range**](docs/ConversationApi.md#insert_pbx_time_range) | **POST** /conversation/pbx/time_range | Insert pbx timeRange
253
253
  *UltracartClient::ConversationApi* | [**insert_pbx_voicemail_mailbox**](docs/ConversationApi.md#insert_pbx_voicemail_mailbox) | **POST** /conversation/pbx/voicemail_mailbox | Insert pbx voicemailMailbox
254
254
  *UltracartClient::ConversationApi* | [**insert_user_pbx_audio**](docs/ConversationApi.md#insert_user_pbx_audio) | **POST** /conversation/pbx/audio/user | Insert user pbx audio
255
+ *UltracartClient::ConversationApi* | [**join_agent_test_session**](docs/ConversationApi.md#join_agent_test_session) | **PUT** /conversation/agent/profiles/{user_id}/test_session/{conversation_uuid}/join | Join a test conversation as the simulated customer
255
256
  *UltracartClient::ConversationApi* | [**join_conversation**](docs/ConversationApi.md#join_conversation) | **PUT** /conversation/conversations/{conversation_uuid}/join | Join a conversation
256
257
  *UltracartClient::ConversationApi* | [**leave_conversation**](docs/ConversationApi.md#leave_conversation) | **DELETE** /conversation/conversations/{conversation_uuid}/leave | Leave a conversation
257
258
  *UltracartClient::ConversationApi* | [**listened_pbx_agent_voicemail**](docs/ConversationApi.md#listened_pbx_agent_voicemail) | **GET** /conversation/pbx/agent/voicemails/{recording_sid}/listened | Listened Agent Voicemail
@@ -267,6 +268,7 @@ Class | Method | HTTP request | Description
267
268
  *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
268
269
  *UltracartClient::ConversationApi* | [**search_pbx_calls**](docs/ConversationApi.md#search_pbx_calls) | **POST** /conversation/pbx/call/search | Search pbx call records
269
270
  *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
271
+ *UltracartClient::ConversationApi* | [**start_agent_test_session**](docs/ConversationApi.md#start_agent_test_session) | **PUT** /conversation/agent/profiles/{user_id}/test_session | Start a test conversation with this AI agent
270
272
  *UltracartClient::ConversationApi* | [**start_conversation**](docs/ConversationApi.md#start_conversation) | **PUT** /conversation/conversations | Start a conversation
271
273
  *UltracartClient::ConversationApi* | [**update_agent_profile**](docs/ConversationApi.md#update_agent_profile) | **PUT** /conversation/agent/profile | Update agent profile
272
274
  *UltracartClient::ConversationApi* | [**update_agent_profile_mcp**](docs/ConversationApi.md#update_agent_profile_mcp) | **POST** /conversation/agent/profiles/{user_id}/mcps/{mcp_server_uuid} | Update an agent MCP server
@@ -941,6 +943,9 @@ Class | Method | HTTP request | Description
941
943
  - [UltracartClient::ConversationAgentStatusRollupSearchResponse](docs/ConversationAgentStatusRollupSearchResponse.md)
942
944
  - [UltracartClient::ConversationAgentStatusSummaryResponse](docs/ConversationAgentStatusSummaryResponse.md)
943
945
  - [UltracartClient::ConversationAgentStatusTimelineResponse](docs/ConversationAgentStatusTimelineResponse.md)
946
+ - [UltracartClient::ConversationAgentTestSessionJoinRequest](docs/ConversationAgentTestSessionJoinRequest.md)
947
+ - [UltracartClient::ConversationAgentTestSessionRequest](docs/ConversationAgentTestSessionRequest.md)
948
+ - [UltracartClient::ConversationAgentTestSessionResponse](docs/ConversationAgentTestSessionResponse.md)
944
949
  - [UltracartClient::ConversationAutocompleteRequest](docs/ConversationAutocompleteRequest.md)
945
950
  - [UltracartClient::ConversationAutocompleteResponse](docs/ConversationAutocompleteResponse.md)
946
951
  - [UltracartClient::ConversationAutocompleteValue](docs/ConversationAutocompleteValue.md)
@@ -948,6 +953,7 @@ Class | Method | HTTP request | Description
948
953
  - [UltracartClient::ConversationCannedMessageResponse](docs/ConversationCannedMessageResponse.md)
949
954
  - [UltracartClient::ConversationCannedMessagesResponse](docs/ConversationCannedMessagesResponse.md)
950
955
  - [UltracartClient::ConversationCannedMessagesSearch](docs/ConversationCannedMessagesSearch.md)
956
+ - [UltracartClient::ConversationCustomerAuth](docs/ConversationCustomerAuth.md)
951
957
  - [UltracartClient::ConversationDeleteKnowledgeBaseDocumentResponse](docs/ConversationDeleteKnowledgeBaseDocumentResponse.md)
952
958
  - [UltracartClient::ConversationDepartment](docs/ConversationDepartment.md)
953
959
  - [UltracartClient::ConversationDepartmentMember](docs/ConversationDepartmentMember.md)
@@ -1928,6 +1934,7 @@ Not every change is committed to every SDK.
1928
1934
 
1929
1935
  | Version | Date | Comments |
1930
1936
  | --: | :-: | --- |
1937
+ | 4.1.151 | 09/04/2026 | conversations - added ai agent capabilities |
1931
1938
  | 4.1.150 | 09/04/2026 | conversations - add ai agent capabilities |
1932
1939
  | 4.1.149 | 09/04/2026 | conversations - added ai agent capabilities |
1933
1940
  | 4.1.148 | 09/04/2026 | conversations - added ai agent capabilities |
@@ -0,0 +1,18 @@
1
+ # UltracartClient::ConversationAgentTestSessionJoinRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **conversation_webchat_queue_uuid** | **String** | Queue entry uuid returned when the test session was started | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'ultracart_api'
13
+
14
+ instance = UltracartClient::ConversationAgentTestSessionJoinRequest.new(
15
+ conversation_webchat_queue_uuid: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,24 @@
1
+ # UltracartClient::ConversationAgentTestSessionRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **customer_profile_oid** | **Integer** | Customer profile to converse as. The cart is established as a soft login for this customer, so the agent sees their real order history. | [optional] |
8
+ | **question** | **String** | Optional opening question, the same way a customer types one before joining the queue. | [optional] |
9
+ | **queue_name** | **String** | Webchat queue to join. The agent is selected explicitly, so this does not have to be a queue the agent is assigned to. | [optional] |
10
+ | **storefront_host_name** | **String** | Host name of the storefront to test against, with no protocol prefix. Determines which catalog the agent searches. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ultracart_api'
16
+
17
+ instance = UltracartClient::ConversationAgentTestSessionRequest.new(
18
+ customer_profile_oid: null,
19
+ question: null,
20
+ queue_name: null,
21
+ storefront_host_name: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,32 @@
1
+ # UltracartClient::ConversationAgentTestSessionResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **cart_id** | **String** | Cart established for this session, soft logged in as the chosen customer profile. Real, and anything the agent adds to it persists. | [optional] |
8
+ | **conversation_webchat_queue_uuid** | **String** | Queue entry created for this session | [optional] |
9
+ | **customer_auth** | [**ConversationCustomerAuth**](ConversationCustomerAuth.md) | | [optional] |
10
+ | **error** | [**Error**](Error.md) | | [optional] |
11
+ | **metadata** | [**ResponseMetadata**](ResponseMetadata.md) | | [optional] |
12
+ | **storefront_host_name** | **String** | Storefront the session is running against | [optional] |
13
+ | **success** | **Boolean** | | [optional] |
14
+ | **warning** | [**Warning**](Warning.md) | | [optional] |
15
+
16
+ ## Example
17
+
18
+ ```ruby
19
+ require 'ultracart_api'
20
+
21
+ instance = UltracartClient::ConversationAgentTestSessionResponse.new(
22
+ cart_id: null,
23
+ conversation_webchat_queue_uuid: null,
24
+ customer_auth: null,
25
+ error: null,
26
+ metadata: null,
27
+ storefront_host_name: null,
28
+ success: null,
29
+ warning: null
30
+ )
31
+ ```
32
+
@@ -107,6 +107,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
107
107
  | [**insert_pbx_time_range**](ConversationApi.md#insert_pbx_time_range) | **POST** /conversation/pbx/time_range | Insert pbx timeRange |
108
108
  | [**insert_pbx_voicemail_mailbox**](ConversationApi.md#insert_pbx_voicemail_mailbox) | **POST** /conversation/pbx/voicemail_mailbox | Insert pbx voicemailMailbox |
109
109
  | [**insert_user_pbx_audio**](ConversationApi.md#insert_user_pbx_audio) | **POST** /conversation/pbx/audio/user | Insert user pbx audio |
110
+ | [**join_agent_test_session**](ConversationApi.md#join_agent_test_session) | **PUT** /conversation/agent/profiles/{user_id}/test_session/{conversation_uuid}/join | Join a test conversation as the simulated customer |
110
111
  | [**join_conversation**](ConversationApi.md#join_conversation) | **PUT** /conversation/conversations/{conversation_uuid}/join | Join a conversation |
111
112
  | [**leave_conversation**](ConversationApi.md#leave_conversation) | **DELETE** /conversation/conversations/{conversation_uuid}/leave | Leave a conversation |
112
113
  | [**listened_pbx_agent_voicemail**](ConversationApi.md#listened_pbx_agent_voicemail) | **GET** /conversation/pbx/agent/voicemails/{recording_sid}/listened | Listened Agent Voicemail |
@@ -122,6 +123,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
122
123
  | [**search_pbx_available_phone_numbers**](ConversationApi.md#search_pbx_available_phone_numbers) | **GET** /conversation/pbx/phone_number/search | Search for available phone numbers |
123
124
  | [**search_pbx_calls**](ConversationApi.md#search_pbx_calls) | **POST** /conversation/pbx/call/search | Search pbx call records |
124
125
  | [**sms_unsubscribe_conversation**](ConversationApi.md#sms_unsubscribe_conversation) | **PUT** /conversation/conversations/{conversation_uuid}/sms_unsubscribe | Unsubscribe any SMS participants in this conversation |
126
+ | [**start_agent_test_session**](ConversationApi.md#start_agent_test_session) | **PUT** /conversation/agent/profiles/{user_id}/test_session | Start a test conversation with this AI agent |
125
127
  | [**start_conversation**](ConversationApi.md#start_conversation) | **PUT** /conversation/conversations | Start a conversation |
126
128
  | [**update_agent_profile**](ConversationApi.md#update_agent_profile) | **PUT** /conversation/agent/profile | Update agent profile |
127
129
  | [**update_agent_profile_mcp**](ConversationApi.md#update_agent_profile_mcp) | **POST** /conversation/agent/profiles/{user_id}/mcps/{mcp_server_uuid} | Update an agent MCP server |
@@ -5632,6 +5634,61 @@ end
5632
5634
  - **Accept**: application/json
5633
5635
 
5634
5636
 
5637
+ ## join_agent_test_session
5638
+
5639
+ > join_agent_test_session(user_id, conversation_uuid, join_request)
5640
+
5641
+ Join a test conversation as the simulated customer
5642
+
5643
+ Joins the simulated customer to the conversation the agent opened for a test session. This mirrors what the storefront webchat widget does after an agent picks up its queue entry, and it is what gives the conversation a customer participant. Requires a logged in user with conversations admin; an API key or OAuth application cannot call this.
5644
+
5645
+
5646
+ ### Examples
5647
+
5648
+
5649
+ (No example for this operation).
5650
+
5651
+
5652
+ #### Using the join_agent_test_session_with_http_info variant
5653
+
5654
+ This returns an Array which contains the response data (`nil` in this case), status code and headers.
5655
+
5656
+ > <Array(nil, Integer, Hash)> join_agent_test_session_with_http_info(user_id, conversation_uuid, join_request)
5657
+
5658
+ ```ruby
5659
+ begin
5660
+ # Join a test conversation as the simulated customer
5661
+ data, status_code, headers = api_instance.join_agent_test_session_with_http_info(user_id, conversation_uuid, join_request)
5662
+ p status_code # => 2xx
5663
+ p headers # => { ... }
5664
+ p data # => nil
5665
+ rescue UltracartClient::ApiError => e
5666
+ puts "Error when calling ConversationApi->join_agent_test_session_with_http_info: #{e}"
5667
+ end
5668
+ ```
5669
+
5670
+ ### Parameters
5671
+
5672
+ | Name | Type | Description | Notes |
5673
+ | ---- | ---- | ----------- | ----- |
5674
+ | **user_id** | **Integer** | | |
5675
+ | **conversation_uuid** | **String** | | |
5676
+ | **join_request** | [**ConversationAgentTestSessionJoinRequest**](ConversationAgentTestSessionJoinRequest.md) | Test session join request | |
5677
+
5678
+ ### Return type
5679
+
5680
+ nil (empty response body)
5681
+
5682
+ ### Authorization
5683
+
5684
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
5685
+
5686
+ ### HTTP request headers
5687
+
5688
+ - **Content-Type**: application/json
5689
+ - **Accept**: application/json
5690
+
5691
+
5635
5692
  ## join_conversation
5636
5693
 
5637
5694
  > join_conversation(conversation_uuid, opts)
@@ -6449,6 +6506,60 @@ nil (empty response body)
6449
6506
  - **Accept**: application/json
6450
6507
 
6451
6508
 
6509
+ ## start_agent_test_session
6510
+
6511
+ > <ConversationAgentTestSessionResponse> start_agent_test_session(user_id, test_session_request)
6512
+
6513
+ Start a test conversation with this AI agent
6514
+
6515
+ Opens a webchat conversation against this specific AI agent as if the given customer had started it from the storefront, so the agent can be tried out before it is put in front of anyone. The session runs against live data: the cart is real, the customer is real, and anything the agent does during the conversation actually happens. Requires a logged in user with conversations admin; an API key or OAuth application cannot call this.
6516
+
6517
+
6518
+ ### Examples
6519
+
6520
+
6521
+ (No example for this operation).
6522
+
6523
+
6524
+ #### Using the start_agent_test_session_with_http_info variant
6525
+
6526
+ This returns an Array which contains the response data, status code and headers.
6527
+
6528
+ > <Array(<ConversationAgentTestSessionResponse>, Integer, Hash)> start_agent_test_session_with_http_info(user_id, test_session_request)
6529
+
6530
+ ```ruby
6531
+ begin
6532
+ # Start a test conversation with this AI agent
6533
+ data, status_code, headers = api_instance.start_agent_test_session_with_http_info(user_id, test_session_request)
6534
+ p status_code # => 2xx
6535
+ p headers # => { ... }
6536
+ p data # => <ConversationAgentTestSessionResponse>
6537
+ rescue UltracartClient::ApiError => e
6538
+ puts "Error when calling ConversationApi->start_agent_test_session_with_http_info: #{e}"
6539
+ end
6540
+ ```
6541
+
6542
+ ### Parameters
6543
+
6544
+ | Name | Type | Description | Notes |
6545
+ | ---- | ---- | ----------- | ----- |
6546
+ | **user_id** | **Integer** | | |
6547
+ | **test_session_request** | [**ConversationAgentTestSessionRequest**](ConversationAgentTestSessionRequest.md) | Test session request | |
6548
+
6549
+ ### Return type
6550
+
6551
+ [**ConversationAgentTestSessionResponse**](ConversationAgentTestSessionResponse.md)
6552
+
6553
+ ### Authorization
6554
+
6555
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
6556
+
6557
+ ### HTTP request headers
6558
+
6559
+ - **Content-Type**: application/json
6560
+ - **Accept**: application/json
6561
+
6562
+
6452
6563
  ## start_conversation
6453
6564
 
6454
6565
  > <ConversationStartResponse> start_conversation(start_request)
@@ -0,0 +1,30 @@
1
+ # UltracartClient::ConversationCustomerAuth
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **conversation_participant_arn** | **String** | | [optional] |
8
+ | **conversation_participant_name** | **String** | | [optional] |
9
+ | **join_dts_conversation_participant_arn** | **String** | | [optional] |
10
+ | **jwt** | **String** | | [optional] |
11
+ | **merchant_id** | **String** | | [optional] |
12
+ | **merchant_id_queue_name** | **String** | | [optional] |
13
+ | **websocket_url** | **String** | | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ultracart_api'
19
+
20
+ instance = UltracartClient::ConversationCustomerAuth.new(
21
+ conversation_participant_arn: null,
22
+ conversation_participant_name: null,
23
+ join_dts_conversation_participant_arn: null,
24
+ jwt: null,
25
+ merchant_id: null,
26
+ merchant_id_queue_name: null,
27
+ websocket_url: null
28
+ )
29
+ ```
30
+
@@ -6646,6 +6646,87 @@ module UltracartClient
6646
6646
  return data, status_code, headers
6647
6647
  end
6648
6648
 
6649
+ # Join a test conversation as the simulated customer
6650
+ # Joins the simulated customer to the conversation the agent opened for a test session. This mirrors what the storefront webchat widget does after an agent picks up its queue entry, and it is what gives the conversation a customer participant. Requires a logged in user with conversations admin; an API key or OAuth application cannot call this.
6651
+ # @param user_id [Integer]
6652
+ # @param conversation_uuid [String]
6653
+ # @param join_request [ConversationAgentTestSessionJoinRequest] Test session join request
6654
+ # @param [Hash] opts the optional parameters
6655
+ # @return [nil]
6656
+ def join_agent_test_session(user_id, conversation_uuid, join_request, opts = {})
6657
+ join_agent_test_session_with_http_info(user_id, conversation_uuid, join_request, opts)
6658
+ nil
6659
+ end
6660
+
6661
+ # Join a test conversation as the simulated customer
6662
+ # Joins the simulated customer to the conversation the agent opened for a test session. This mirrors what the storefront webchat widget does after an agent picks up its queue entry, and it is what gives the conversation a customer participant. Requires a logged in user with conversations admin; an API key or OAuth application cannot call this.
6663
+ # @param user_id [Integer]
6664
+ # @param conversation_uuid [String]
6665
+ # @param join_request [ConversationAgentTestSessionJoinRequest] Test session join request
6666
+ # @param [Hash] opts the optional parameters
6667
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
6668
+ def join_agent_test_session_with_http_info(user_id, conversation_uuid, join_request, opts = {})
6669
+ if @api_client.config.debugging
6670
+ @api_client.config.logger.debug 'Calling API: ConversationApi.join_agent_test_session ...'
6671
+ end
6672
+ # verify the required parameter 'user_id' is set
6673
+ if @api_client.config.client_side_validation && user_id.nil?
6674
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling ConversationApi.join_agent_test_session"
6675
+ end
6676
+ # verify the required parameter 'conversation_uuid' is set
6677
+ if @api_client.config.client_side_validation && conversation_uuid.nil?
6678
+ fail ArgumentError, "Missing the required parameter 'conversation_uuid' when calling ConversationApi.join_agent_test_session"
6679
+ end
6680
+ # verify the required parameter 'join_request' is set
6681
+ if @api_client.config.client_side_validation && join_request.nil?
6682
+ fail ArgumentError, "Missing the required parameter 'join_request' when calling ConversationApi.join_agent_test_session"
6683
+ end
6684
+ # resource path
6685
+ local_var_path = '/conversation/agent/profiles/{user_id}/test_session/{conversation_uuid}/join'.sub('{' + 'user_id' + '}', CGI.escape(user_id.to_s)).sub('{' + 'conversation_uuid' + '}', CGI.escape(conversation_uuid.to_s))
6686
+
6687
+ # query parameters
6688
+ query_params = opts[:query_params] || {}
6689
+
6690
+ # header parameters
6691
+ header_params = opts[:header_params] || {}
6692
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
6693
+ # HTTP header 'Accept' (if needed)
6694
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
6695
+ # HTTP header 'Content-Type'
6696
+ content_type = @api_client.select_header_content_type(['application/json'])
6697
+ if !content_type.nil?
6698
+ header_params['Content-Type'] = content_type
6699
+ end
6700
+
6701
+ # form parameters
6702
+ form_params = opts[:form_params] || {}
6703
+
6704
+ # http body (model)
6705
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(join_request)
6706
+
6707
+ # return_type
6708
+ return_type = opts[:debug_return_type]
6709
+
6710
+ # auth_names
6711
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
6712
+
6713
+ new_options = opts.merge(
6714
+ :operation => :"ConversationApi.join_agent_test_session",
6715
+ :header_params => header_params,
6716
+ :query_params => query_params,
6717
+ :form_params => form_params,
6718
+ :body => post_body,
6719
+ :auth_names => auth_names,
6720
+ :return_type => return_type
6721
+ )
6722
+
6723
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
6724
+ if @api_client.config.debugging
6725
+ @api_client.config.logger.debug "API called: ConversationApi#join_agent_test_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
6726
+ end
6727
+ return data, status_code, headers
6728
+ end
6729
+
6649
6730
  # Join a conversation
6650
6731
  # Join a conversation
6651
6732
  # @param conversation_uuid [String]
@@ -7689,6 +7770,81 @@ module UltracartClient
7689
7770
  return data, status_code, headers
7690
7771
  end
7691
7772
 
7773
+ # Start a test conversation with this AI agent
7774
+ # Opens a webchat conversation against this specific AI agent as if the given customer had started it from the storefront, so the agent can be tried out before it is put in front of anyone. The session runs against live data: the cart is real, the customer is real, and anything the agent does during the conversation actually happens. Requires a logged in user with conversations admin; an API key or OAuth application cannot call this.
7775
+ # @param user_id [Integer]
7776
+ # @param test_session_request [ConversationAgentTestSessionRequest] Test session request
7777
+ # @param [Hash] opts the optional parameters
7778
+ # @return [ConversationAgentTestSessionResponse]
7779
+ def start_agent_test_session(user_id, test_session_request, opts = {})
7780
+ data, _status_code, _headers = start_agent_test_session_with_http_info(user_id, test_session_request, opts)
7781
+ data
7782
+ end
7783
+
7784
+ # Start a test conversation with this AI agent
7785
+ # Opens a webchat conversation against this specific AI agent as if the given customer had started it from the storefront, so the agent can be tried out before it is put in front of anyone. The session runs against live data: the cart is real, the customer is real, and anything the agent does during the conversation actually happens. Requires a logged in user with conversations admin; an API key or OAuth application cannot call this.
7786
+ # @param user_id [Integer]
7787
+ # @param test_session_request [ConversationAgentTestSessionRequest] Test session request
7788
+ # @param [Hash] opts the optional parameters
7789
+ # @return [Array<(ConversationAgentTestSessionResponse, Integer, Hash)>] ConversationAgentTestSessionResponse data, response status code and response headers
7790
+ def start_agent_test_session_with_http_info(user_id, test_session_request, opts = {})
7791
+ if @api_client.config.debugging
7792
+ @api_client.config.logger.debug 'Calling API: ConversationApi.start_agent_test_session ...'
7793
+ end
7794
+ # verify the required parameter 'user_id' is set
7795
+ if @api_client.config.client_side_validation && user_id.nil?
7796
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling ConversationApi.start_agent_test_session"
7797
+ end
7798
+ # verify the required parameter 'test_session_request' is set
7799
+ if @api_client.config.client_side_validation && test_session_request.nil?
7800
+ fail ArgumentError, "Missing the required parameter 'test_session_request' when calling ConversationApi.start_agent_test_session"
7801
+ end
7802
+ # resource path
7803
+ local_var_path = '/conversation/agent/profiles/{user_id}/test_session'.sub('{' + 'user_id' + '}', CGI.escape(user_id.to_s))
7804
+
7805
+ # query parameters
7806
+ query_params = opts[:query_params] || {}
7807
+
7808
+ # header parameters
7809
+ header_params = opts[:header_params] || {}
7810
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
7811
+ # HTTP header 'Accept' (if needed)
7812
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
7813
+ # HTTP header 'Content-Type'
7814
+ content_type = @api_client.select_header_content_type(['application/json'])
7815
+ if !content_type.nil?
7816
+ header_params['Content-Type'] = content_type
7817
+ end
7818
+
7819
+ # form parameters
7820
+ form_params = opts[:form_params] || {}
7821
+
7822
+ # http body (model)
7823
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(test_session_request)
7824
+
7825
+ # return_type
7826
+ return_type = opts[:debug_return_type] || 'ConversationAgentTestSessionResponse'
7827
+
7828
+ # auth_names
7829
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
7830
+
7831
+ new_options = opts.merge(
7832
+ :operation => :"ConversationApi.start_agent_test_session",
7833
+ :header_params => header_params,
7834
+ :query_params => query_params,
7835
+ :form_params => form_params,
7836
+ :body => post_body,
7837
+ :auth_names => auth_names,
7838
+ :return_type => return_type
7839
+ )
7840
+
7841
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
7842
+ if @api_client.config.debugging
7843
+ @api_client.config.logger.debug "API called: ConversationApi#start_agent_test_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
7844
+ end
7845
+ return data, status_code, headers
7846
+ end
7847
+
7692
7848
  # Start a conversation
7693
7849
  # Start a new conversation
7694
7850
  # @param start_request [ConversationStartRequest] Start request