class AsposeEmailCloud::ClientMessageListRequest

Request model for client_message_list operation.

Attributes

account[RW]

Email account @return [String]

account_storage_folder[RW]

Folder in storage where account file located @return [String]

folder[RW]

A folder in email account @return [String]

format[RW]

Base64 data format. Used only if type is set to Base64. Enum, available values: Eml, Msg, MsgUnicode, Mhtml, Html, Tnef, Oft @return [String]

query_string[RW]

A MailQuery search string @return [String]

recursive[RW]

Specifies that should message be searched in subfolders recursively @return [BOOLEAN]

storage[RW]

Storage name where account file located @return [String]

type[RW]

MailMessageBase type. Using this property you can get messages in different formats (as EmailDto, MapiMessageDto or a file represented as Base64 string). Enum, available values: Dto, Mapi, Base64 @return [String]

Public Class Methods

new(folder:, account:, query_string: nil, storage: nil, account_storage_folder: nil, recursive: nil, type: nil, format: nil) click to toggle source

Get messages from folder, filtered by query

The query string should have the following view. The example of a simple expression: '<Field name>' <Comparison operator> '<Field value>', where <Field Name> - the name of a message field through which filtering is made, <Comparison operator> - comparison operators, as their name implies, allow to compare message field and specified value, <Field value> - value to be compared with a message field. The number of simple expressions can make a compound one, ex.: (<Simple expression 1> & <Simple expression 2>) | <Simple expression 3 >, where "&" - logical-AND operator, "|" - logical-OR operator At present the following values are allowed as a field name (<Field name>): "To" - represents a TO field of message, "Text" - represents string in the header or body of the message, "Bcc" - represents a BCC field of message, "Body" - represents a string in the body of message, "Cc" - represents a CC field of message, "From" - represents a From field of message, "Subject" - represents a string in the subject of message, "InternalDate" - represents an internal date of message, "SentDate" - represents a sent date of message Additionally, the following field names are allowed for IMAP-protocol: "Answered" - represents an /Answered flag of message "Seen" - represents a /Seen flag of message "Flagged" - represents a /Flagged flag of message "Draft" - represents a /Draft flag of message "Deleted" - represents a Deleted/ flag of message "Recent" - represents a Deleted/ flag of message "MessageSize" - represents a size (in bytes) of message Additionally, the following field names are allowed for Exchange: "IsRead" - Indicates whether the message has been read "HasAttachment" - Indicates whether or not the message has attachments "IsSubmitted" - Indicates whether the message has been submitted to the Outbox "ContentClass" - represents a content class of item The field value (<Field value>) can take the following values: For text fields - any string, For date type fields - the string of "d-MMM-yyy" format, ex. "10-Feb-2009", For flags (fields of boolean type) - either "True", or "False"

@param [String] folder A folder in email account @param [String] account Email account @param [String] query_string A MailQuery search string @param [String] storage Storage name where account file located @param [String] account_storage_folder Folder in storage where account file located @param [BOOLEAN] recursive Specifies that should message be searched in subfolders recursively @param [String] type MailMessageBase type. Using this property you can get messages in different formats (as EmailDto, MapiMessageDto or a file represented as Base64 string). Enum, available values: Dto, Mapi, Base64 @param [String] format Base64 data format. Used only if type is set to Base64. Enum, available values: Eml, Msg, MsgUnicode, Mhtml, Html, Tnef, Oft

# File lib/aspose-email-cloud/models/client_message_list_request.rb, line 67
def initialize(folder:, account:, query_string: nil, storage: nil, account_storage_folder: nil, recursive: nil, type: nil, format: nil)
  self.folder = folder if folder
  self.account = account if account
  self.query_string = query_string if query_string
  self.storage = storage if storage
  self.account_storage_folder = account_storage_folder if account_storage_folder
  self.recursive = recursive if recursive
  self.type = type if type
  self.format = format if format
end

Public Instance Methods

to_http_info(api_client) click to toggle source
# File lib/aspose-email-cloud/models/client_message_list_request.rb, line 78
def to_http_info(api_client)
  # verify the required parameter 'folder' is set
  if api_client.config.client_side_validation && self.folder.nil?
    raise ArgumentError, "Missing the required parameter 'folder' when calling ClientMessageApi.list"
  end
  # verify the required parameter 'account' is set
  if api_client.config.client_side_validation && self.account.nil?
    raise ArgumentError, "Missing the required parameter 'account' when calling ClientMessageApi.list"
  end
  # resource path
  local_var_path = '/email/client/message/list'

  # query parameters
  query_params = {}
  query_params[:folder] = self.folder
  query_params[:account] = self.account
  query_params[:queryString] = self.query_string unless self.query_string.nil?
  query_params[:storage] = self.storage unless self.storage.nil?
  query_params[:accountStorageFolder] = self.account_storage_folder unless self.account_storage_folder.nil?
  query_params[:recursive] = self.recursive unless self.recursive.nil?
  query_params[:type] = self.type unless self.type.nil?
  query_params[:format] = self.format unless self.format.nil?

  # form parameters
  form_params = {}

  # http body (model)
  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'] = form_params.any? ? 'multipart/form-data' : EmailRequest.select_header_content_type(['application/json'])

  AsposeEmailCloud::HttpRequest.new(resource_path: local_var_path,
                                    header_params: header_params,
                                    query_params: query_params,
                                    form_params: form_params,
                                    auth_names: auth_names)
end