helo-email-sdk 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/lib/helo/apis/templates.rb +47 -0
- data/lib/helo/models/create_domain_request.rb +1 -0
- data/lib/helo/models/create_template_request.rb +14 -0
- data/lib/helo/models/dns_records_response.rb +1 -0
- data/lib/helo/models/paginated_response_of_template_summary_response.rb +10 -0
- data/lib/helo/models/render_draft_request.rb +14 -0
- data/lib/helo/models/render_template_request.rb +10 -0
- data/lib/helo/models/render_template_response.rb +11 -0
- data/lib/helo/models/template_response.rb +18 -0
- data/lib/helo/models/template_summary_response.rb +14 -0
- data/lib/helo/models/templates_list_request.rb +13 -0
- data/lib/helo/models/update_domain_request.rb +1 -0
- data/lib/helo/models/update_template_request.rb +15 -0
- data/lib/helo/version.rb +1 -1
- metadata +11 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 28a1530bbcbb83039f3b9ad42de952e4304dcd84f928968e9eddfcdac0a14087
|
|
4
|
+
data.tar.gz: 831fc165e69374debae288d5c55d7046683c8cbdb30b550e656f55609b0ceeb3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9addab2c0ddcd644ed94886ef93b7f32ebe84431987ebb96dee85b017cb6a6c2acf960c4ec57f4eda6d30dede78e18e3e85edd98ce8a525daaa8119069621364
|
|
7
|
+
data.tar.gz: 287062d7c0942f5e50904a1d3748e4e03127a53f4811d53d58930ca490bf926a636ddc0bca8efe4aee6cccc4cb2ecca17bcd09b8c0430f9d3ff277443b75b5fe
|
data/README.md
CHANGED
|
@@ -167,4 +167,5 @@ To compute a signature yourself — signing a fixture in tests, for example —
|
|
|
167
167
|
- [Helo::Broadcasts](docs/Broadcasts.md)
|
|
168
168
|
- [Helo::Statistics](docs/Statistics.md)
|
|
169
169
|
- [Helo::Suppressions](docs/Suppressions.md)
|
|
170
|
+
- [Helo::Templates](docs/Templates.md)
|
|
170
171
|
- [Helo::Webhooks](docs/Webhooks.md)
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class Templates < API
|
|
5
|
+
def list(request_data = {})
|
|
6
|
+
request = TemplatesListRequest.new(request_data)
|
|
7
|
+
response = @client.request(:get, "/templates", params: request.to_params)
|
|
8
|
+
PaginatedResponseOfTemplateSummaryResponse.from_hash(response.body)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def create(request_data)
|
|
12
|
+
request = CreateTemplateRequest.new(request_data)
|
|
13
|
+
response = @client.request(:post, "/templates", body: request.to_params)
|
|
14
|
+
TemplateResponse.from_hash(response.body)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def render_draft(request_data)
|
|
18
|
+
request = RenderDraftRequest.new(request_data)
|
|
19
|
+
response = @client.request(:post, "/templates/render", body: request.to_params)
|
|
20
|
+
RenderTemplateResponse.from_hash(response.body)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def retrieve(id)
|
|
24
|
+
response = @client.request(:get, "/templates/#{id}")
|
|
25
|
+
TemplateResponse.from_hash(response.body)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def update(id, request_data)
|
|
29
|
+
request = UpdateTemplateRequest.new(request_data)
|
|
30
|
+
response = @client.request(:patch, "/templates/#{id}", body: request.to_params)
|
|
31
|
+
TemplateResponse.from_hash(response.body)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def delete(id)
|
|
35
|
+
response = @client.request(:delete, "/templates/#{id}")
|
|
36
|
+
nil
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def render(id, request_data)
|
|
40
|
+
request = RenderTemplateRequest.new(request_data)
|
|
41
|
+
response = @client.request(:post, "/templates/#{id}/render", body: request.to_params)
|
|
42
|
+
RenderTemplateResponse.from_hash(response.body)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
class_methods :list, :create, :render_draft, :retrieve, :update, :delete, :render
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class CreateTemplateRequest
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :name, :string, key: "name"
|
|
8
|
+
api_attribute :subject, :string, key: "subject"
|
|
9
|
+
api_attribute :html, :string, key: "html"
|
|
10
|
+
api_attribute :mjml, :string, key: "mjml"
|
|
11
|
+
api_attribute :text, :string, key: "text"
|
|
12
|
+
api_attribute :channel_ids, key: "channelIds"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -7,5 +7,6 @@ module Helo
|
|
|
7
7
|
api_attribute :domain_key_active, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "domainKeyActive"
|
|
8
8
|
api_attribute :domain_key_pending, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "domainKeyPending"
|
|
9
9
|
api_attribute :return_path, Helo::Core::ArrayType.new("Helo::DnsRecordResponse"), key: "returnPath"
|
|
10
|
+
api_attribute :tracking, Helo::Core::ModelType.new("Helo::DnsRecordResponse"), key: "tracking"
|
|
10
11
|
end
|
|
11
12
|
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class PaginatedResponseOfTemplateSummaryResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :total_count, :integer, key: "totalCount"
|
|
8
|
+
api_attribute :results, Helo::Core::ArrayType.new("Helo::TemplateSummaryResponse"), key: "results"
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class RenderDraftRequest
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :subject, :string, key: "subject"
|
|
8
|
+
api_attribute :html, :string, key: "html"
|
|
9
|
+
api_attribute :mjml, :string, key: "mjml"
|
|
10
|
+
api_attribute :text, :string, key: "text"
|
|
11
|
+
api_attribute :inline_styles, :boolean, key: "inlineStyles"
|
|
12
|
+
api_attribute :data, key: "data"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class TemplateResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :id, :string, key: "id"
|
|
8
|
+
api_attribute :created_at, :datetime, key: "createdAt"
|
|
9
|
+
api_attribute :updated_at, :datetime, key: "updatedAt"
|
|
10
|
+
api_attribute :version, :integer, key: "version"
|
|
11
|
+
api_attribute :name, :string, key: "name"
|
|
12
|
+
api_attribute :subject, :string, key: "subject"
|
|
13
|
+
api_attribute :html, :string, key: "html"
|
|
14
|
+
api_attribute :mjml, :string, key: "mjml"
|
|
15
|
+
api_attribute :text, :string, key: "text"
|
|
16
|
+
api_attribute :channel_ids, key: "channelIds"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class TemplateSummaryResponse
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :id, :string, key: "id"
|
|
8
|
+
api_attribute :created_at, :datetime, key: "createdAt"
|
|
9
|
+
api_attribute :updated_at, :datetime, key: "updatedAt"
|
|
10
|
+
api_attribute :name, :string, key: "name"
|
|
11
|
+
api_attribute :subject, :string, key: "subject"
|
|
12
|
+
api_attribute :channel_ids, key: "channelIds"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
# Generated request model for query parameters
|
|
5
|
+
class TemplatesListRequest
|
|
6
|
+
include Helo::Core::Model
|
|
7
|
+
|
|
8
|
+
api_attribute :limit, :integer, key: "limit"
|
|
9
|
+
api_attribute :offset, :integer, key: "offset"
|
|
10
|
+
api_attribute :name, :string, key: "name"
|
|
11
|
+
api_attribute :channel_ids, key: "channelIds", explode: false
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Helo
|
|
4
|
+
class UpdateTemplateRequest
|
|
5
|
+
include Helo::Core::Model
|
|
6
|
+
|
|
7
|
+
api_attribute :name, :string, key: "name"
|
|
8
|
+
api_attribute :subject, :string, key: "subject"
|
|
9
|
+
api_attribute :html, :string, key: "html", nullable: true
|
|
10
|
+
api_attribute :mjml, :string, key: "mjml", nullable: true
|
|
11
|
+
api_attribute :text, :string, key: "text", nullable: true
|
|
12
|
+
api_attribute :channel_ids, key: "channelIds", nullable: true
|
|
13
|
+
api_attribute :version, :integer, key: "version"
|
|
14
|
+
end
|
|
15
|
+
end
|
data/lib/helo/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: helo-email-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Helo Email
|
|
@@ -111,6 +111,7 @@ files:
|
|
|
111
111
|
- lib/helo/apis/sending.rb
|
|
112
112
|
- lib/helo/apis/statistics.rb
|
|
113
113
|
- lib/helo/apis/suppressions.rb
|
|
114
|
+
- lib/helo/apis/templates.rb
|
|
114
115
|
- lib/helo/apis/webhooks.rb
|
|
115
116
|
- lib/helo/client.rb
|
|
116
117
|
- lib/helo/configuration.rb
|
|
@@ -161,6 +162,7 @@ files:
|
|
|
161
162
|
- lib/helo/models/create_domain_request.rb
|
|
162
163
|
- lib/helo/models/create_suppressions_request.rb
|
|
163
164
|
- lib/helo/models/create_suppressions_response.rb
|
|
165
|
+
- lib/helo/models/create_template_request.rb
|
|
164
166
|
- lib/helo/models/create_webhook_request.rb
|
|
165
167
|
- lib/helo/models/delivered_details.rb
|
|
166
168
|
- lib/helo/models/delivery_stats.rb
|
|
@@ -198,6 +200,7 @@ files:
|
|
|
198
200
|
- lib/helo/models/paginated_response_of_broadcast_suppression.rb
|
|
199
201
|
- lib/helo/models/paginated_response_of_domain_response.rb
|
|
200
202
|
- lib/helo/models/paginated_response_of_suppression_response.rb
|
|
203
|
+
- lib/helo/models/paginated_response_of_template_summary_response.rb
|
|
201
204
|
- lib/helo/models/pagination_result_of_channel_basic_response.rb
|
|
202
205
|
- lib/helo/models/pagination_result_of_webhook_response.rb
|
|
203
206
|
- lib/helo/models/recipient_complained_webhook_payload.rb
|
|
@@ -208,6 +211,9 @@ files:
|
|
|
208
211
|
- lib/helo/models/remove_suppression_result.rb
|
|
209
212
|
- lib/helo/models/remove_suppressions_request.rb
|
|
210
213
|
- lib/helo/models/remove_suppressions_response.rb
|
|
214
|
+
- lib/helo/models/render_draft_request.rb
|
|
215
|
+
- lib/helo/models/render_template_request.rb
|
|
216
|
+
- lib/helo/models/render_template_response.rb
|
|
211
217
|
- lib/helo/models/resubscribed_details.rb
|
|
212
218
|
- lib/helo/models/return_path_domain_verification_failed_payload.rb
|
|
213
219
|
- lib/helo/models/return_path_domain_verified_payload.rb
|
|
@@ -235,10 +241,14 @@ files:
|
|
|
235
241
|
- lib/helo/models/suppression_response.rb
|
|
236
242
|
- lib/helo/models/suppression_result.rb
|
|
237
243
|
- lib/helo/models/suppressions_list_request.rb
|
|
244
|
+
- lib/helo/models/template_response.rb
|
|
245
|
+
- lib/helo/models/template_summary_response.rb
|
|
246
|
+
- lib/helo/models/templates_list_request.rb
|
|
238
247
|
- lib/helo/models/unsubscribed_details.rb
|
|
239
248
|
- lib/helo/models/update_channel_request.rb
|
|
240
249
|
- lib/helo/models/update_channel_tracking.rb
|
|
241
250
|
- lib/helo/models/update_domain_request.rb
|
|
251
|
+
- lib/helo/models/update_template_request.rb
|
|
242
252
|
- lib/helo/models/update_webhook_request.rb
|
|
243
253
|
- lib/helo/models/validation_error.rb
|
|
244
254
|
- lib/helo/models/webhook_header.rb
|