Class: Moonbase::Resources::InboxMessages

Inherits:
Object
  • Object
show all
Defined in:
lib/moonbase/resources/inbox_messages.rb,
lib/moonbase/resources/inbox_messages/attachments.rb

Overview

Manage your inboxes, conversations, and messages

Defined Under Namespace

Classes: Attachments

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ InboxMessages

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of InboxMessages.

Parameters:



165
166
167
168
# File 'lib/moonbase/resources/inbox_messages.rb', line 165

def initialize(client:)
  @client = client
  @attachments = Moonbase::Resources::InboxMessages::Attachments.new(client: client)
end

Instance Attribute Details

#attachmentsMoonbase::Resources::InboxMessages::Attachments (readonly)

Manage your inboxes, conversations, and messages



9
10
11
# File 'lib/moonbase/resources/inbox_messages.rb', line 9

def attachments
  @attachments
end

Instance Method Details

#create(body:, inbox_id:, bcc: nil, cc: nil, conversation_id: nil, subject: nil, to: nil, request_options: {}) ⇒ Moonbase::Models::EmailMessage

Creates a new message draft.

Parameters:

Returns:

See Also:



34
35
36
37
38
39
40
41
42
43
# File 'lib/moonbase/resources/inbox_messages.rb', line 34

def create(params)
  parsed, options = Moonbase::InboxMessageCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "inbox_messages",
    body: parsed,
    model: Moonbase::EmailMessage,
    options: options
  )
end

#delete(id, request_options: {}) ⇒ nil

Permanently deletes a message draft.

Parameters:

  • id (String)

    The ID of the message to delete.

  • request_options (Moonbase::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

  • (nil)

See Also:



153
154
155
156
157
158
159
160
# File 'lib/moonbase/resources/inbox_messages.rb', line 153

def delete(id, params = {})
  @client.request(
    method: :delete,
    path: ["inbox_messages/%1$s", id],
    model: NilClass,
    options: params[:request_options]
  )
end

#list(after: nil, before: nil, conversation_id: nil, inbox_id: nil, limit: nil, request_options: {}) ⇒ Moonbase::Internal::CursorPage<Moonbase::Models::EmailMessagePointer>

Some parameter documentations has been truncated, see Models::InboxMessageListParams for more details.

Returns a list of messages.

Parameters:

Returns:

See Also:



129
130
131
132
133
134
135
136
137
138
139
140
# File 'lib/moonbase/resources/inbox_messages.rb', line 129

def list(params = {})
  parsed, options = Moonbase::InboxMessageListParams.dump_request(params)
  query = Moonbase::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: "inbox_messages",
    query: query,
    page: Moonbase::Internal::CursorPage,
    model: Moonbase::EmailMessagePointer,
    options: options
  )
end

#retrieve(id, include: nil, request_options: {}) ⇒ Moonbase::Models::EmailMessage

Some parameter documentations has been truncated, see Models::InboxMessageRetrieveParams for more details.

Retrieves the details of an existing message.

Parameters:

Returns:

See Also:



61
62
63
64
65
66
67
68
69
70
71
# File 'lib/moonbase/resources/inbox_messages.rb', line 61

def retrieve(id, params = {})
  parsed, options = Moonbase::InboxMessageRetrieveParams.dump_request(params)
  query = Moonbase::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: ["inbox_messages/%1$s", id],
    query: query,
    model: Moonbase::EmailMessage,
    options: options
  )
end

#update(id, lock_version:, bcc: nil, body: nil, cc: nil, subject: nil, to: nil, request_options: {}) ⇒ Moonbase::Models::EmailMessage

Updates an existing message draft.

Parameters:

Returns:

See Also:



96
97
98
99
100
101
102
103
104
105
# File 'lib/moonbase/resources/inbox_messages.rb', line 96

def update(id, params)
  parsed, options = Moonbase::InboxMessageUpdateParams.dump_request(params)
  @client.request(
    method: :patch,
    path: ["inbox_messages/%1$s", id],
    body: parsed,
    model: Moonbase::EmailMessage,
    options: options
  )
end