Class: GrowsurfRuby::Resources::Campaign::Emails

Inherits:
Object
  • Object
show all
Defined in:
lib/growsurf_ruby/resources/campaign/emails.rb,
sig/growsurf_ruby/resources/campaign/emails.rbs

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Emails

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 Emails.

Parameters:



60
61
62
# File 'lib/growsurf_ruby/resources/campaign/emails.rb', line 60

def initialize(client:)
  @client = client
end

Instance Method Details

#retrieve(id, request_options: {}) ⇒ Hash{Symbol=>Object}

Retrieves a program's email configuration — the same surface as the dashboard Program Editor's Emails tab (per-email templates plus sender, contact, and design settings).

To see the full object with every field and its current value, GET this resource, then PATCH back only the fields you want to change.

Parameters:

Returns:

  • (Hash{Symbol=>Object})


21
22
23
24
25
26
27
28
# File 'lib/growsurf_ruby/resources/campaign/emails.rb', line 21

def retrieve(id, params = {})
  @client.request(
    method: :get,
    path: ["campaign/%1$s/emails", id],
    model: GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown],
    options: params[:request_options]
  )
end

#update(id, body, request_options: {}) ⇒ Hash{Symbol=>Object}

Updates a program's email configuration. Only the fields you send are changed; anything you leave out is untouched. Unknown fields and invalid values return a 400.

The request body is a partial CampaignEmails object. To see the full object with every field and its current value, GET this resource, then PATCH back only the fields you want to change.

Parameters:

  • id (String)

    GrowSurf program ID.

  • body (Hash{Symbol=>Object})

    Partial email configuration to merge.

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

Returns:

  • (Hash{Symbol=>Object})


47
48
49
50
51
52
53
54
55
# File 'lib/growsurf_ruby/resources/campaign/emails.rb', line 47

def update(id, body, params = {})
  @client.request(
    method: :patch,
    path: ["campaign/%1$s/emails", id],
    body: body,
    model: GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown],
    options: params[:request_options]
  )
end