class AsposeEmailCloud::ClientThreadApi

ClientThreadApi operations.

Attributes

api_invoker[R]

Public Class Methods

new(api_invoker) click to toggle source

Initializes a new instance of the ClientThreadApi class. @param [ApiInvoker] api_invoker

# File lib/aspose-email-cloud/api/client_thread_api.rb, line 45
def initialize(api_invoker)
  @api_invoker = api_invoker
end

Public Instance Methods

delete(request) click to toggle source

Delete thread by id. All messages from thread will also be deleted.

@param [ClientThreadDeleteRequest] request Delete email thread request. @return [nil]

# File lib/aspose-email-cloud/api/client_thread_api.rb, line 52
def delete(request)
  # verify the required parameter 'request' is set
  if @api_invoker.api_client.config.client_side_validation && request.nil?
    raise ArgumentError, "Missing the required parameter 'request' when calling ClientThreadApi.delete"
  end

  local_var_path = '/email/client/thread'
  post_body = @api_invoker.api_client.object_to_http_body(request)
  auth_names = ['JWT']

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = EmailRequest.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = EmailRequest.select_header_content_type(['application/json'])
  http_request = AsposeEmailCloud::HttpRequest.new(resource_path: local_var_path,
                                                   header_params: header_params,
                                                   body: post_body,
                                                   auth_names: auth_names)

  @api_invoker.make_request(http_request, :DELETE, nil)
  nil
end
get_list(request) click to toggle source

Get message threads from folder. All messages are partly fetched (without email body and some other fields).

@param [ClientThreadGetListRequest] request Request object. @return [EmailThreadList]

# File lib/aspose-email-cloud/api/client_thread_api.rb, line 80
def get_list(request)
  http_request = request.to_http_info(@api_invoker.api_client)
  @api_invoker.make_request(http_request, :GET, 'EmailThreadList')
end
get_messages(request) click to toggle source

Get messages from thread by id. All messages are fully fetched. For accounts with CacheFile only cached messages will be returned.

@param [ClientThreadGetMessagesRequest] request Request object. @return [EmailList]

# File lib/aspose-email-cloud/api/client_thread_api.rb, line 88
def get_messages(request)
  http_request = request.to_http_info(@api_invoker.api_client)
  @api_invoker.make_request(http_request, :GET, 'EmailList')
end
move(request) click to toggle source

Move thread to another folder.

@param [ClientThreadMoveRequest] request Move thread request. @return [nil]

# File lib/aspose-email-cloud/api/client_thread_api.rb, line 96
def move(request)
  # verify the required parameter 'request' is set
  if @api_invoker.api_client.config.client_side_validation && request.nil?
    raise ArgumentError, "Missing the required parameter 'request' when calling ClientThreadApi.move"
  end

  local_var_path = '/email/client/thread/move'
  post_body = @api_invoker.api_client.object_to_http_body(request)
  auth_names = ['JWT']

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = EmailRequest.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = EmailRequest.select_header_content_type(['application/json'])
  http_request = AsposeEmailCloud::HttpRequest.new(resource_path: local_var_path,
                                                   header_params: header_params,
                                                   body: post_body,
                                                   auth_names: auth_names)

  @api_invoker.make_request(http_request, :PUT, nil)
  nil
end
set_is_read(request) click to toggle source

Mark all messages in thread as read or unread.

@param [ClientThreadSetIsReadRequest] request Email account specifier and IsRead flag. @return [nil]

# File lib/aspose-email-cloud/api/client_thread_api.rb, line 124
def set_is_read(request)
  # verify the required parameter 'request' is set
  if @api_invoker.api_client.config.client_side_validation && request.nil?
    raise ArgumentError, "Missing the required parameter 'request' when calling ClientThreadApi.set_is_read"
  end

  local_var_path = '/email/client/thread/set-is-read'
  post_body = @api_invoker.api_client.object_to_http_body(request)
  auth_names = ['JWT']

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = EmailRequest.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = EmailRequest.select_header_content_type(['application/json'])
  http_request = AsposeEmailCloud::HttpRequest.new(resource_path: local_var_path,
                                                   header_params: header_params,
                                                   body: post_body,
                                                   auth_names: auth_names)

  @api_invoker.make_request(http_request, :PUT, nil)
  nil
end