Class: PyrxSynapse::TemplatesClient
- Inherits:
-
Object
- Object
- PyrxSynapse::TemplatesClient
- Defined in:
- lib/pyrx_synapse/templates_client.rb
Overview
Template management sub-client.
Instance Method Summary collapse
-
#create(params) ⇒ Object
Create a new email template.
-
#delete(slug) ⇒ Object
Delete a template by slug.
-
#get(slug) ⇒ Object
Get a single template by slug.
-
#initialize(client) ⇒ TemplatesClient
constructor
A new instance of TemplatesClient.
-
#list ⇒ Object
List all email templates.
-
#preview(slug, params) ⇒ Object
Preview a rendered template with sample data.
-
#update(slug, params) ⇒ Object
Update an existing template by slug.
Constructor Details
#initialize(client) ⇒ TemplatesClient
Returns a new instance of TemplatesClient.
6 7 8 |
# File 'lib/pyrx_synapse/templates_client.rb', line 6 def initialize(client) @client = client end |
Instance Method Details
#create(params) ⇒ Object
Create a new email template.
25 26 27 28 |
# File 'lib/pyrx_synapse/templates_client.rb', line 25 def create(params) raw = @client.request(:post, "/v1/templates", body: params) Parsers.parse_template(raw) end |
#delete(slug) ⇒ Object
Delete a template by slug.
37 38 39 40 |
# File 'lib/pyrx_synapse/templates_client.rb', line 37 def delete(slug) @client.request(:delete, "/v1/templates/#{slug}") nil end |
#get(slug) ⇒ Object
Get a single template by slug.
19 20 21 22 |
# File 'lib/pyrx_synapse/templates_client.rb', line 19 def get(slug) raw = @client.request(:get, "/v1/templates/#{slug}") Parsers.parse_template(raw) end |
#list ⇒ Object
List all email templates.
11 12 13 14 15 16 |
# File 'lib/pyrx_synapse/templates_client.rb', line 11 def list raw = @client.request(:get, "/v1/templates") return [] unless raw.is_a?(Array) raw.map { |t| Parsers.parse_template(t) } end |
#preview(slug, params) ⇒ Object
Preview a rendered template with sample data.
43 44 45 46 |
# File 'lib/pyrx_synapse/templates_client.rb', line 43 def preview(slug, params) raw = @client.request(:post, "/v1/templates/#{slug}/preview", body: params) Parsers.parse_template_preview(raw) end |
#update(slug, params) ⇒ Object
Update an existing template by slug.
31 32 33 34 |
# File 'lib/pyrx_synapse/templates_client.rb', line 31 def update(slug, params) raw = @client.request(:put, "/v1/templates/#{slug}", body: params) Parsers.parse_template(raw) end |