com.unblu.webapi.jersey.v4.api.ConversationsApi Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jersey3-client-v4 Show documentation
Show all versions of jersey3-client-v4 Show documentation
Client implemented using Jersey
package com.unblu.webapi.jersey.v4.api;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.unblu.webapi.jersey.v4.invoker.ApiClient;
import com.unblu.webapi.jersey.v4.invoker.ApiException;
import com.unblu.webapi.jersey.v4.invoker.ApiResponse;
import com.unblu.webapi.jersey.v4.invoker.Configuration;
import com.unblu.webapi.jersey.v4.invoker.Pair;
import com.unblu.webapi.model.v4.ConversationCreationData;
import com.unblu.webapi.model.v4.ConversationData;
import com.unblu.webapi.model.v4.ConversationFileDataList;
import com.unblu.webapi.model.v4.ConversationQuery;
import com.unblu.webapi.model.v4.ConversationRecipientData;
import com.unblu.webapi.model.v4.ConversationRecordingState;
import com.unblu.webapi.model.v4.ConversationResult;
import com.unblu.webapi.model.v4.ConversationsAddExternalParticipantBody;
import com.unblu.webapi.model.v4.ConversationsAddParticipantBody;
import com.unblu.webapi.model.v4.ConversationsChangeParticipantVisibilityBody;
import com.unblu.webapi.model.v4.ConversationsEndBody;
import com.unblu.webapi.model.v4.ConversationsOffboardParticipantBody;
import com.unblu.webapi.model.v4.ConversationsSetAssigneePersonBody;
import com.unblu.webapi.model.v4.ConversationsSetAwaitedPersonTypeBody;
import com.unblu.webapi.model.v4.ConversationsSetContextPersonBody;
import com.unblu.webapi.model.v4.ConversationsSetLocaleBody;
import com.unblu.webapi.model.v4.ConversationsSetScheduledTimestampBody;
import com.unblu.webapi.model.v4.ConversationsSetStarredBody;
import com.unblu.webapi.model.v4.ConversationsSetTopicBody;
import com.unblu.webapi.model.v4.ConversationsSetVisibilityBody;
import com.unblu.webapi.model.v4.ConversationsSetVisitorDataBody;
import com.unblu.webapi.model.v4.ExpandFields;
import jakarta.ws.rs.core.GenericType;
public class ConversationsApi {
private ApiClient apiClient;
public ConversationsApi() {
this(Configuration.getDefaultApiClient());
}
public ConversationsApi(ApiClient apiClient) {
this.apiClient = apiClient;
}
public ApiClient getApiClient() {
return apiClient;
}
public void setApiClient(ApiClient apiClient) {
this.apiClient = apiClient;
}
/**
* addExternalParticipant Adds a participant connected through an external messenger to the given conversation. <p> For participants that will write
* messages directly through Unblu, use `addParticipant` instead.<br>
*
* @param conversationId The conversation to update (required)
* @param conversationsAddExternalParticipantBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsAddExternalParticipant(String conversationId, ConversationsAddExternalParticipantBody conversationsAddExternalParticipantBody, List expand) throws ApiException {
return conversationsAddExternalParticipantWithHttpInfo(conversationId, conversationsAddExternalParticipantBody, expand).getData();
}
/**
* addExternalParticipant Adds a participant connected through an external messenger to the given conversation. <p> For participants that will write
* messages directly through Unblu, use `addParticipant` instead.<br>
*
* @param conversationId The conversation to update (required)
* @param conversationsAddExternalParticipantBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsAddExternalParticipantWithHttpInfo(String conversationId, ConversationsAddExternalParticipantBody conversationsAddExternalParticipantBody, List expand) throws ApiException {
Object localVarPostBody = conversationsAddExternalParticipantBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsAddExternalParticipant");
}
// verify the required parameter 'conversationsAddExternalParticipantBody' is set
if (conversationsAddExternalParticipantBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsAddExternalParticipantBody' when calling conversationsAddExternalParticipant");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/addExternalParticipant"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* addParticipant Adds a participant to the given conversation. <p> This can only be used for participants who send messages through Unblu. Use
* `addExternalParticipant` for participants who send messages through an external messenger channel.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsAddParticipantBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsAddParticipant(String conversationId, ConversationsAddParticipantBody conversationsAddParticipantBody, List expand) throws ApiException {
return conversationsAddParticipantWithHttpInfo(conversationId, conversationsAddParticipantBody, expand).getData();
}
/**
* addParticipant Adds a participant to the given conversation. <p> This can only be used for participants who send messages through Unblu. Use
* `addExternalParticipant` for participants who send messages through an external messenger channel.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsAddParticipantBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsAddParticipantWithHttpInfo(String conversationId, ConversationsAddParticipantBody conversationsAddParticipantBody, List expand) throws ApiException {
Object localVarPostBody = conversationsAddParticipantBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsAddParticipant");
}
// verify the required parameter 'conversationsAddParticipantBody' is set
if (conversationsAddParticipantBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsAddParticipantBody' when calling conversationsAddParticipant");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/addParticipant"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* changeParticipantVisibility Changes the visibility of a conversation's participant.<br>
*
* @param conversationId (required)
* @param conversationsChangeParticipantVisibilityBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsChangeParticipantVisibility(String conversationId, ConversationsChangeParticipantVisibilityBody conversationsChangeParticipantVisibilityBody, List expand) throws ApiException {
return conversationsChangeParticipantVisibilityWithHttpInfo(conversationId, conversationsChangeParticipantVisibilityBody, expand).getData();
}
/**
* changeParticipantVisibility Changes the visibility of a conversation's participant.<br>
*
* @param conversationId (required)
* @param conversationsChangeParticipantVisibilityBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsChangeParticipantVisibilityWithHttpInfo(String conversationId, ConversationsChangeParticipantVisibilityBody conversationsChangeParticipantVisibilityBody, List expand) throws ApiException {
Object localVarPostBody = conversationsChangeParticipantVisibilityBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsChangeParticipantVisibility");
}
// verify the required parameter 'conversationsChangeParticipantVisibilityBody' is set
if (conversationsChangeParticipantVisibilityBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsChangeParticipantVisibilityBody' when calling conversationsChangeParticipantVisibility");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/changeParticipantVisibility"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* create Creates the conversation in the system. The conversation ID mustn't be set as a new one will be generated. <br> If called with the
* authorization role `SUPERVISOR` or `REGISTERED_USER`, there are a number of restrictions regarding the conversation to be created:
* <ul> <li>The `initialEngagementType` or the referenced `conversationTemplateId` must be a conversation type initiated by
* agents <li>The `assigneePersonId` must refer to the person entity of the agent making the call <li>The agent making the call must be
* the only participant in the conversation </ul> If `sourceId` and `externalMessengerChannelId` are set they have to be unique for
* any active conversations. Ended conversations are ignored.<br>
*
* @param conversationCreationData (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsCreate(ConversationCreationData conversationCreationData, List expand) throws ApiException {
return conversationsCreateWithHttpInfo(conversationCreationData, expand).getData();
}
/**
* create Creates the conversation in the system. The conversation ID mustn't be set as a new one will be generated. <br> If called with the
* authorization role `SUPERVISOR` or `REGISTERED_USER`, there are a number of restrictions regarding the conversation to be created:
* <ul> <li>The `initialEngagementType` or the referenced `conversationTemplateId` must be a conversation type initiated by
* agents <li>The `assigneePersonId` must refer to the person entity of the agent making the call <li>The agent making the call must be
* the only participant in the conversation </ul> If `sourceId` and `externalMessengerChannelId` are set they have to be unique for
* any active conversations. Ended conversations are ignored.<br>
*
* @param conversationCreationData (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsCreateWithHttpInfo(ConversationCreationData conversationCreationData, List expand) throws ApiException {
Object localVarPostBody = conversationCreationData;
// verify the required parameter 'conversationCreationData' is set
if (conversationCreationData == null) {
throw new ApiException(400, "Missing the required parameter 'conversationCreationData' when calling conversationsCreate");
}
// create path and map variables
String localVarPath = "/conversations/create";
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* delete Deletes the conversation with the given ID. <br> Calls with the authorization role `SUPERVISOR` or `REGISTERED_USER` are
* only permissible if: <ul> <li>The agent making the call is the only participant in the conversation <li>The conversation never had any
* participants other than the agent calling the endpoint <li>The conversation contains no messages except system messages and messages sent by bots
* </ul><br>
*
* @param conversationId The ID of the conversation to be deleted (required)
* @throws ApiException if fails to make API call
*/
public void conversationsDelete(String conversationId) throws ApiException {
conversationsDeleteWithHttpInfo(conversationId);
}
/**
* delete Deletes the conversation with the given ID. <br> Calls with the authorization role `SUPERVISOR` or `REGISTERED_USER` are
* only permissible if: <ul> <li>The agent making the call is the only participant in the conversation <li>The conversation never had any
* participants other than the agent calling the endpoint <li>The conversation contains no messages except system messages and messages sent by bots
* </ul><br>
*
* @param conversationId The ID of the conversation to be deleted (required)
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsDeleteWithHttpInfo(String conversationId) throws ApiException {
Object localVarPostBody = new HashMap<>();
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsDelete");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/delete"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
return apiClient.invokeAPI(localVarPath, "DELETE", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, null);
}
/**
* end Ends a conversation. If called with the authorization role `SUPERVISOR` or `REGISTERED_USER`, the agent making the call must have the
* necessary permissions to end a conversation.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsEndBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsEnd(String conversationId, ConversationsEndBody conversationsEndBody, List expand) throws ApiException {
return conversationsEndWithHttpInfo(conversationId, conversationsEndBody, expand).getData();
}
/**
* end Ends a conversation. If called with the authorization role `SUPERVISOR` or `REGISTERED_USER`, the agent making the call must have the
* necessary permissions to end a conversation.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsEndBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsEndWithHttpInfo(String conversationId, ConversationsEndBody conversationsEndBody, List expand) throws ApiException {
Object localVarPostBody = conversationsEndBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsEnd");
}
// verify the required parameter 'conversationsEndBody' is set
if (conversationsEndBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsEndBody' when calling conversationsEnd");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/end"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* getBySourceIdAndChannelId Returns the active conversation for the given source ID and channel ID. When called with the authorization role
* `REGISTERED_USER`, the agent making the call must be a participant in the conversation matching the search criteria. If they aren't, the call
* will fail. When called with the authorization role `SUPERVISOR`, the conversation matching the search criteria must include a participant who is an
* agent in their team (or one of their teams). If it doesn't, the call will fail. <p> Ended conversations for the same sourceId and channel are
* ignored. These can be retrieved using the <code>/search</code> service.<br>
*
* @param sourceId The source ID the conversation was created with (optional)
* @param externalMessengerChannelId The messenger channel ID the conversation is connected to. Can be null for internal conversations. (optional)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsGetBySourceIdAndChannelId(String sourceId, String externalMessengerChannelId, List expand) throws ApiException {
return conversationsGetBySourceIdAndChannelIdWithHttpInfo(sourceId, externalMessengerChannelId, expand).getData();
}
/**
* getBySourceIdAndChannelId Returns the active conversation for the given source ID and channel ID. When called with the authorization role
* `REGISTERED_USER`, the agent making the call must be a participant in the conversation matching the search criteria. If they aren't, the call
* will fail. When called with the authorization role `SUPERVISOR`, the conversation matching the search criteria must include a participant who is an
* agent in their team (or one of their teams). If it doesn't, the call will fail. <p> Ended conversations for the same sourceId and channel are
* ignored. These can be retrieved using the <code>/search</code> service.<br>
*
* @param sourceId The source ID the conversation was created with (optional)
* @param externalMessengerChannelId The messenger channel ID the conversation is connected to. Can be null for internal conversations. (optional)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsGetBySourceIdAndChannelIdWithHttpInfo(String sourceId, String externalMessengerChannelId, List expand) throws ApiException {
Object localVarPostBody = new HashMap<>();
// create path and map variables
String localVarPath = "/conversations/getBySourceIdAndChannelId";
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("", "sourceId", sourceId));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "externalMessengerChannelId", externalMessengerChannelId));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* getConversationFiles Returns a list of all files that have been shared/sent within the specified conversation.<br>
*
* @param conversationId the id of conversation, for which the file list should be retrieved (required)
* @return ConversationFileDataList
* @throws ApiException if fails to make API call
*/
public ConversationFileDataList conversationsGetConversationFiles(String conversationId) throws ApiException {
return conversationsGetConversationFilesWithHttpInfo(conversationId).getData();
}
/**
* getConversationFiles Returns a list of all files that have been shared/sent within the specified conversation.<br>
*
* @param conversationId the id of conversation, for which the file list should be retrieved (required)
* @return ApiResponse<ConversationFileDataList>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsGetConversationFilesWithHttpInfo(String conversationId) throws ApiException {
Object localVarPostBody = new HashMap<>();
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsGetConversationFiles");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/getConversationFiles"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* getRecordingState Retrieve the current recording state of the given conversation<br>
*
* @param conversationId The conversation to retrieve the recording state for (required)
* @return ConversationRecordingState
* @throws ApiException if fails to make API call
*/
public ConversationRecordingState conversationsGetRecordingState(String conversationId) throws ApiException {
return conversationsGetRecordingStateWithHttpInfo(conversationId).getData();
}
/**
* getRecordingState Retrieve the current recording state of the given conversation<br>
*
* @param conversationId The conversation to retrieve the recording state for (required)
* @return ApiResponse<ConversationRecordingState>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsGetRecordingStateWithHttpInfo(String conversationId) throws ApiException {
Object localVarPostBody = new HashMap<>();
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsGetRecordingState");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/getRecordingState"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* offboardParticipant Offboards a participant from a conversation.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsOffboardParticipantBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsOffboardParticipant(String conversationId, ConversationsOffboardParticipantBody conversationsOffboardParticipantBody, List expand) throws ApiException {
return conversationsOffboardParticipantWithHttpInfo(conversationId, conversationsOffboardParticipantBody, expand).getData();
}
/**
* offboardParticipant Offboards a participant from a conversation.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsOffboardParticipantBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsOffboardParticipantWithHttpInfo(String conversationId, ConversationsOffboardParticipantBody conversationsOffboardParticipantBody, List expand) throws ApiException {
Object localVarPostBody = conversationsOffboardParticipantBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsOffboardParticipant");
}
// verify the required parameter 'conversationsOffboardParticipantBody' is set
if (conversationsOffboardParticipantBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsOffboardParticipantBody' when calling conversationsOffboardParticipant");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/offboardParticipant"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* read Returns the conversation with the given ID. If called with the authorization role `SUPERVISOR` or `REGISTERED_USER`, the agent
* making the call must be a participant in the conversation.<br>
*
* @param conversationId ID of the conversation which should be returned (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsRead(String conversationId, List expand) throws ApiException {
return conversationsReadWithHttpInfo(conversationId, expand).getData();
}
/**
* read Returns the conversation with the given ID. If called with the authorization role `SUPERVISOR` or `REGISTERED_USER`, the agent
* making the call must be a participant in the conversation.<br>
*
* @param conversationId ID of the conversation which should be returned (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsReadWithHttpInfo(String conversationId, List expand) throws ApiException {
Object localVarPostBody = new HashMap<>();
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsRead");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/read"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* search Search for conversations in the current account. If called with the authorization role `REGISTERED_USER`, the call only returns
* conversations matching the search criteria where the agent making a call is the participant. If the agent making the call has the user role
* `SUPERVISOR`, the results only include conversations of the agents in their team or teams.<br>
*
* @param conversationQuery (required)
* @param expand (optional)
* @return ConversationResult
* @throws ApiException if fails to make API call
*/
public ConversationResult conversationsSearch(ConversationQuery conversationQuery, List expand) throws ApiException {
return conversationsSearchWithHttpInfo(conversationQuery, expand).getData();
}
/**
* search Search for conversations in the current account. If called with the authorization role `REGISTERED_USER`, the call only returns
* conversations matching the search criteria where the agent making a call is the participant. If the agent making the call has the user role
* `SUPERVISOR`, the results only include conversations of the agents in their team or teams.<br>
*
* @param conversationQuery (required)
* @param expand (optional)
* @return ApiResponse<ConversationResult>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSearchWithHttpInfo(ConversationQuery conversationQuery, List expand) throws ApiException {
Object localVarPostBody = conversationQuery;
// verify the required parameter 'conversationQuery' is set
if (conversationQuery == null) {
throw new ApiException(400, "Missing the required parameter 'conversationQuery' when calling conversationsSearch");
}
// create path and map variables
String localVarPath = "/conversations/search";
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setAssigneePerson Sets an agent as assignee to a conversation. <p> <b>Note:</b> The person has to have an active participation in the
* conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetAssigneePersonBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetAssigneePerson(String conversationId, ConversationsSetAssigneePersonBody conversationsSetAssigneePersonBody, List expand) throws ApiException {
return conversationsSetAssigneePersonWithHttpInfo(conversationId, conversationsSetAssigneePersonBody, expand).getData();
}
/**
* setAssigneePerson Sets an agent as assignee to a conversation. <p> <b>Note:</b> The person has to have an active participation in the
* conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetAssigneePersonBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetAssigneePersonWithHttpInfo(String conversationId, ConversationsSetAssigneePersonBody conversationsSetAssigneePersonBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetAssigneePersonBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetAssigneePerson");
}
// verify the required parameter 'conversationsSetAssigneePersonBody' is set
if (conversationsSetAssigneePersonBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetAssigneePersonBody' when calling conversationsSetAssigneePerson");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setAssigneePerson"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setAwaitedPersonType Sets the awaited person type in a conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetAwaitedPersonTypeBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetAwaitedPersonType(String conversationId, ConversationsSetAwaitedPersonTypeBody conversationsSetAwaitedPersonTypeBody, List expand) throws ApiException {
return conversationsSetAwaitedPersonTypeWithHttpInfo(conversationId, conversationsSetAwaitedPersonTypeBody, expand).getData();
}
/**
* setAwaitedPersonType Sets the awaited person type in a conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetAwaitedPersonTypeBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetAwaitedPersonTypeWithHttpInfo(String conversationId, ConversationsSetAwaitedPersonTypeBody conversationsSetAwaitedPersonTypeBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetAwaitedPersonTypeBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetAwaitedPersonType");
}
// verify the required parameter 'conversationsSetAwaitedPersonTypeBody' is set
if (conversationsSetAwaitedPersonTypeBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetAwaitedPersonTypeBody' when calling conversationsSetAwaitedPersonType");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setAwaitedPersonType"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setContextPerson Sets a visitor as context person of a conversation. <p> <b>Note:</b> The person has to have an active participation in the
* conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetContextPersonBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetContextPerson(String conversationId, ConversationsSetContextPersonBody conversationsSetContextPersonBody, List expand) throws ApiException {
return conversationsSetContextPersonWithHttpInfo(conversationId, conversationsSetContextPersonBody, expand).getData();
}
/**
* setContextPerson Sets a visitor as context person of a conversation. <p> <b>Note:</b> The person has to have an active participation in the
* conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetContextPersonBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetContextPersonWithHttpInfo(String conversationId, ConversationsSetContextPersonBody conversationsSetContextPersonBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetContextPersonBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetContextPerson");
}
// verify the required parameter 'conversationsSetContextPersonBody' is set
if (conversationsSetContextPersonBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetContextPersonBody' when calling conversationsSetContextPerson");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setContextPerson"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setLocale Sets the locale of the conversation language (as BCP 47 language tag form including region if available).<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetLocaleBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetLocale(String conversationId, ConversationsSetLocaleBody conversationsSetLocaleBody, List expand) throws ApiException {
return conversationsSetLocaleWithHttpInfo(conversationId, conversationsSetLocaleBody, expand).getData();
}
/**
* setLocale Sets the locale of the conversation language (as BCP 47 language tag form including region if available).<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetLocaleBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetLocaleWithHttpInfo(String conversationId, ConversationsSetLocaleBody conversationsSetLocaleBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetLocaleBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetLocale");
}
// verify the required parameter 'conversationsSetLocaleBody' is set
if (conversationsSetLocaleBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetLocaleBody' when calling conversationsSetLocale");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setLocale"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setRecipient Sets a person, named area, team or account as the recipient of a conversation.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationRecipientData (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetRecipient(String conversationId, ConversationRecipientData conversationRecipientData, List expand) throws ApiException {
return conversationsSetRecipientWithHttpInfo(conversationId, conversationRecipientData, expand).getData();
}
/**
* setRecipient Sets a person, named area, team or account as the recipient of a conversation.<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationRecipientData (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetRecipientWithHttpInfo(String conversationId, ConversationRecipientData conversationRecipientData, List expand) throws ApiException {
Object localVarPostBody = conversationRecipientData;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetRecipient");
}
// verify the required parameter 'conversationRecipientData' is set
if (conversationRecipientData == null) {
throw new ApiException(400, "Missing the required parameter 'conversationRecipientData' when calling conversationsSetRecipient");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setRecipient"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setScheduledTimestamp Sets the scheduled time of the conversation. The timestamp is the Unix timestamp (ms) when the conversation is scheduled for, rounded
* to the nearest minute. Can only be set for conversations with initialEngagementType = \"SCHEDULED_CONVERSATION\". <br> When called with
* the authorization role `SUPERVISOR` or `REGISTERED_USER`, the behavior of the call depends on the configuration property
* `com.unblu.conversation.message.allowNonAdminUsersChangeConversationScheduledTimeViaWebApi`: <ul> <li>If the configuration property is
* `true`, the agent making the call can only change the conversation's `scheduledTimestamp` if they're a participant in the
* conversation. <li>If the configuration property is `false`, the agent making the call can change the `scheduledTimestamp` provided
* their participation type in the conversation is listed in the configuration property `com.unblu.conversation.allowChangeConversationScheduledTime`.
* </ul><br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetScheduledTimestampBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetScheduledTimestamp(String conversationId, ConversationsSetScheduledTimestampBody conversationsSetScheduledTimestampBody, List expand) throws ApiException {
return conversationsSetScheduledTimestampWithHttpInfo(conversationId, conversationsSetScheduledTimestampBody, expand).getData();
}
/**
* setScheduledTimestamp Sets the scheduled time of the conversation. The timestamp is the Unix timestamp (ms) when the conversation is scheduled for, rounded
* to the nearest minute. Can only be set for conversations with initialEngagementType = \"SCHEDULED_CONVERSATION\". <br> When called with
* the authorization role `SUPERVISOR` or `REGISTERED_USER`, the behavior of the call depends on the configuration property
* `com.unblu.conversation.message.allowNonAdminUsersChangeConversationScheduledTimeViaWebApi`: <ul> <li>If the configuration property is
* `true`, the agent making the call can only change the conversation's `scheduledTimestamp` if they're a participant in the
* conversation. <li>If the configuration property is `false`, the agent making the call can change the `scheduledTimestamp` provided
* their participation type in the conversation is listed in the configuration property `com.unblu.conversation.allowChangeConversationScheduledTime`.
* </ul><br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetScheduledTimestampBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetScheduledTimestampWithHttpInfo(String conversationId, ConversationsSetScheduledTimestampBody conversationsSetScheduledTimestampBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetScheduledTimestampBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetScheduledTimestamp");
}
// verify the required parameter 'conversationsSetScheduledTimestampBody' is set
if (conversationsSetScheduledTimestampBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetScheduledTimestampBody' when calling conversationsSetScheduledTimestamp");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setScheduledTimestamp"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setStarred Sets the starred status of a conversation for a particular person<br>
*
* @param conversationId the conversation to be starred/unstarred (required)
* @param conversationsSetStarredBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetStarred(String conversationId, ConversationsSetStarredBody conversationsSetStarredBody, List expand) throws ApiException {
return conversationsSetStarredWithHttpInfo(conversationId, conversationsSetStarredBody, expand).getData();
}
/**
* setStarred Sets the starred status of a conversation for a particular person<br>
*
* @param conversationId the conversation to be starred/unstarred (required)
* @param conversationsSetStarredBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetStarredWithHttpInfo(String conversationId, ConversationsSetStarredBody conversationsSetStarredBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetStarredBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetStarred");
}
// verify the required parameter 'conversationsSetStarredBody' is set
if (conversationsSetStarredBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetStarredBody' when calling conversationsSetStarred");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setStarred"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setTopic Sets the topic of the conversation. Setting it to `null` deletes the topic, provided it isn't mandatory to specify a topic for the
* conversation type (e.g. `SCHEDULED_CONVERSATION`). <br> When called with the authorization role `SUPERVISOR` or
* `REGISTERED_USER`, the behavior of the call depends on the configuration property
* `com.unblu.conversation.message.allowNonAdminUsersChangeConversationTopicViaWebApi`: <ul> <li>If the configuration property is
* `true`, the agent making the call can only change the conversation's topic if they're a participant in the conversation. <li>If the
* configuration property is `false`, the agent making the call can change the topic provided their participation type in the conversation is listed
* in the configuration property `com.unblu.conversation.message.allowChangeConversationTopic`. </ul><br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetTopicBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetTopic(String conversationId, ConversationsSetTopicBody conversationsSetTopicBody, List expand) throws ApiException {
return conversationsSetTopicWithHttpInfo(conversationId, conversationsSetTopicBody, expand).getData();
}
/**
* setTopic Sets the topic of the conversation. Setting it to `null` deletes the topic, provided it isn't mandatory to specify a topic for the
* conversation type (e.g. `SCHEDULED_CONVERSATION`). <br> When called with the authorization role `SUPERVISOR` or
* `REGISTERED_USER`, the behavior of the call depends on the configuration property
* `com.unblu.conversation.message.allowNonAdminUsersChangeConversationTopicViaWebApi`: <ul> <li>If the configuration property is
* `true`, the agent making the call can only change the conversation's topic if they're a participant in the conversation. <li>If the
* configuration property is `false`, the agent making the call can change the topic provided their participation type in the conversation is listed
* in the configuration property `com.unblu.conversation.message.allowChangeConversationTopic`. </ul><br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetTopicBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetTopicWithHttpInfo(String conversationId, ConversationsSetTopicBody conversationsSetTopicBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetTopicBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetTopic");
}
// verify the required parameter 'conversationsSetTopicBody' is set
if (conversationsSetTopicBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetTopicBody' when calling conversationsSetTopic");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setTopic"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setVisibility Sets the conversation visibility<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetVisibilityBody (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetVisibility(String conversationId, ConversationsSetVisibilityBody conversationsSetVisibilityBody, List expand) throws ApiException {
return conversationsSetVisibilityWithHttpInfo(conversationId, conversationsSetVisibilityBody, expand).getData();
}
/**
* setVisibility Sets the conversation visibility<br>
*
* @param conversationId the conversation that is updated (required)
* @param conversationsSetVisibilityBody (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetVisibilityWithHttpInfo(String conversationId, ConversationsSetVisibilityBody conversationsSetVisibilityBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetVisibilityBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetVisibility");
}
// verify the required parameter 'conversationsSetVisibilityBody' is set
if (conversationsSetVisibilityBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetVisibilityBody' when calling conversationsSetVisibility");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setVisibility"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* setVisitorData Sets custom visitor data. The data is readable on the visitor side. Don't include any confidential information. Security-related data
* should be stored in the conversation metadata.<br>
*
* @param conversationId the conversation where the custom data should be added (required)
* @param conversationsSetVisitorDataBody the custom visitor data (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsSetVisitorData(String conversationId, ConversationsSetVisitorDataBody conversationsSetVisitorDataBody, List expand) throws ApiException {
return conversationsSetVisitorDataWithHttpInfo(conversationId, conversationsSetVisitorDataBody, expand).getData();
}
/**
* setVisitorData Sets custom visitor data. The data is readable on the visitor side. Don't include any confidential information. Security-related data
* should be stored in the conversation metadata.<br>
*
* @param conversationId the conversation where the custom data should be added (required)
* @param conversationsSetVisitorDataBody the custom visitor data (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsSetVisitorDataWithHttpInfo(String conversationId, ConversationsSetVisitorDataBody conversationsSetVisitorDataBody, List expand) throws ApiException {
Object localVarPostBody = conversationsSetVisitorDataBody;
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsSetVisitorData");
}
// verify the required parameter 'conversationsSetVisitorDataBody' is set
if (conversationsSetVisitorDataBody == null) {
throw new ApiException(400, "Missing the required parameter 'conversationsSetVisitorDataBody' when calling conversationsSetVisitorData");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/setVisitorData"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "expand", expand));
final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
GenericType localVarReturnType = new GenericType() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
/**
* startRecording Manually start a conversation recording. The recording is only started if: <ul> <li>A compatible blob store is configured
* <li>Manually starting and stopping a recording is allowed <li>There is an active call or collaboration layer <li>There isn't already a
* conversation recording running </ul> The recording is started asynchronously, and there may be a brief delay before it starts. The type of the
* recording (audio only or audio and video) is determined by the configuration. If an error occurs, a <code>conversation.recording_failed</code>
* webhook is triggered.<br>
*
* @param conversationId The conversation for which a recording should be started (required)
* @throws ApiException if fails to make API call
*/
public void conversationsStartRecording(String conversationId) throws ApiException {
conversationsStartRecordingWithHttpInfo(conversationId);
}
/**
* startRecording Manually start a conversation recording. The recording is only started if: <ul> <li>A compatible blob store is configured
* <li>Manually starting and stopping a recording is allowed <li>There is an active call or collaboration layer <li>There isn't already a
* conversation recording running </ul> The recording is started asynchronously, and there may be a brief delay before it starts. The type of the
* recording (audio only or audio and video) is determined by the configuration. If an error occurs, a <code>conversation.recording_failed</code>
* webhook is triggered.<br>
*
* @param conversationId The conversation for which a recording should be started (required)
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsStartRecordingWithHttpInfo(String conversationId) throws ApiException {
Object localVarPostBody = new HashMap<>();
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsStartRecording");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/startRecording"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, null);
}
/**
* stopRecording Manually stop a conversation recording. The recording is stopped if: <ul> <li>There is a running conversation recording
* <li>Manually starting and stopping the recording is allowed </ul><br>
*
* @param conversationId The conversation for which a recording should be stopped (required)
* @throws ApiException if fails to make API call
*/
public void conversationsStopRecording(String conversationId) throws ApiException {
conversationsStopRecordingWithHttpInfo(conversationId);
}
/**
* stopRecording Manually stop a conversation recording. The recording is stopped if: <ul> <li>There is a running conversation recording
* <li>Manually starting and stopping the recording is allowed </ul><br>
*
* @param conversationId The conversation for which a recording should be stopped (required)
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsStopRecordingWithHttpInfo(String conversationId) throws ApiException {
Object localVarPostBody = new HashMap<>();
// verify the required parameter 'conversationId' is set
if (conversationId == null) {
throw new ApiException(400, "Missing the required parameter 'conversationId' when calling conversationsStopRecording");
}
// create path and map variables
String localVarPath = "/conversations/{conversationId}/stopRecording"
.replaceAll("\\{" + "conversationId" + "\\}", apiClient.escapeString(conversationId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
String[] localVarAuthNames = new String[] { "basicAuth" };
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, null);
}
/**
* updateConfiguration Updates the configuration map for a specific conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param requestBody the key-value map of settings that will be updated. The source for this map has to be the <code>configuration</code> attribute
* when you read the conversation using <code>configuration</code> in the <code>expand</code> query parameter. (required)
* @param expand (optional)
* @return ConversationData
* @throws ApiException if fails to make API call
*/
public ConversationData conversationsUpdateConfiguration(String conversationId, Map requestBody, List expand) throws ApiException {
return conversationsUpdateConfigurationWithHttpInfo(conversationId, requestBody, expand).getData();
}
/**
* updateConfiguration Updates the configuration map for a specific conversation<br>
*
* @param conversationId the conversation that is updated (required)
* @param requestBody the key-value map of settings that will be updated. The source for this map has to be the <code>configuration</code> attribute
* when you read the conversation using <code>configuration</code> in the <code>expand</code> query parameter. (required)
* @param expand (optional)
* @return ApiResponse<ConversationData>
* @throws ApiException if fails to make API call
*/
public ApiResponse conversationsUpdateConfigurationWithHttpInfo(String conversationId, Map