mailersend-ruby 0.2.2 → 1.0.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/.env.example +1 -1
- data/.github/workflows/publish_gem.yml +21 -0
- data/CHANGELOG.md +13 -0
- data/README.md +147 -29
- data/lib/mailersend/bulk_email/bulk_email.rb +36 -0
- data/lib/mailersend/client.rb +2 -2
- data/lib/mailersend/email/email.rb +3 -3
- data/lib/mailersend/suppressions/suppressions.rb +114 -0
- data/lib/mailersend/version.rb +1 -1
- data/lib/mailersend.rb +12 -10
- data/mailersend-ruby.gemspec +2 -1
- data/renovate.json +5 -0
- metadata +13 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 42f9a5e46d23e87c1624883d5bdff3c8979885245ee2efb9a6d60b2d51f2598b
|
4
|
+
data.tar.gz: 47db5c300727257e6c3a96e1a65bd4bd8e285948e01c83e74d02439310343b83
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7a82321fba8995153b7288d3cde80c1b420c4f4fb5a3eab0fbd6ec341272b406fe7b198961bf3292db9b7b41a23486487db308f596a27c3dad4b4b15801044ae
|
7
|
+
data.tar.gz: 82ae19286af3357b4102c05afeabed5efb8b99127ad5443d09c8ce43f20b245268856ccc55b59e896e23d9e2f377a731b7b1c605a8cfd200b5ab8976feeb0beb
|
data/.env.example
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
MAILERSEND_API_TOKEN="superlongkey"
|
@@ -0,0 +1,21 @@
|
|
1
|
+
name: Publish Gem
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
tags:
|
6
|
+
- v*
|
7
|
+
jobs:
|
8
|
+
build:
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
|
11
|
+
steps:
|
12
|
+
- uses: actions/checkout@v2
|
13
|
+
|
14
|
+
- name: Release Gem
|
15
|
+
if: contains(github.ref, 'refs/tags/v')
|
16
|
+
uses: cadwallion/publish-rubygems-action@master
|
17
|
+
env:
|
18
|
+
GITHUB_TOKEN: ${{secrets.GITHUBTOKEN}}
|
19
|
+
RUBYGEMS_API_KEY: ${{secrets.RUBYGEMS_API_KEY}}
|
20
|
+
RELEASE_COMMAND: rake release
|
21
|
+
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
## [Released]
|
2
2
|
|
3
|
+
## [1.0.0] - 2022-02-15
|
4
|
+
|
5
|
+
- BREAKING CHANGE: Renamed `API_TOKEN` variable to `MAILERSEND_API_TOKEN`
|
6
|
+
|
7
|
+
## [0.2.4] - 2021-12-13
|
8
|
+
|
9
|
+
- Added bulk email endpoint
|
10
|
+
|
11
|
+
# [0.2.3] - 2021-11-11
|
12
|
+
|
13
|
+
- Fixed typo for reply_to (thanks @JohnGoodman)
|
14
|
+
|
3
15
|
## [0.2.2] - 2021-08-04
|
4
16
|
|
5
17
|
- Removed leftover debugging stuff
|
@@ -24,6 +36,7 @@
|
|
24
36
|
|
25
37
|
- Added required parameter for token creation
|
26
38
|
-
|
39
|
+
|
27
40
|
## [0.1.6] - 2021-06-15
|
28
41
|
|
29
42
|
- Fixed small issues in Domains
|
data/README.md
CHANGED
@@ -11,12 +11,15 @@ MailerSend Ruby SDK
|
|
11
11
|
- [Send an email](#send-an-email)
|
12
12
|
- [Add CC, BCC recipients](#add-cc-bcc-recipients)
|
13
13
|
- [Send a template-based email](#send-a-template-based-email)
|
14
|
+
- [Advanced personalization](#advanced-personalization)
|
15
|
+
- [Simple personalization](#simple-personalization)
|
16
|
+
- [Bulk Email](#bulk-email)
|
17
|
+
- [Send bulk email](#send-bulk-email)
|
18
|
+
- [Get bulk email status](#get-bulk-email-status)
|
14
19
|
- [Tokens](#tokens)
|
15
20
|
- [Create a token](#create-a-token)
|
16
21
|
- [Update a token](#update-a-token)
|
17
22
|
- [Delete a token](#delete-a-token)
|
18
|
-
- [Advanced personalization](#advanced-personalization)
|
19
|
-
- [Simple personalization](#simple-personalization)
|
20
23
|
- [Send email with attachment](#send-email-with-attachment)
|
21
24
|
- [Activity](#activity)
|
22
25
|
- [Get a list of activities](#get-a-list-of-activities)
|
@@ -29,6 +32,7 @@ MailerSend Ruby SDK
|
|
29
32
|
- [Get a list of domains](#get-a-list-of-domains)
|
30
33
|
- [Get a single domain](#get-a-single-domain)
|
31
34
|
- [Delete a domain](#delete-a-domain)
|
35
|
+
- [Get recipients for a domain](#get-recipients-for-a-domain)
|
32
36
|
- [Update domain settings](#update-domain-settings)
|
33
37
|
- [Messages](#messages)
|
34
38
|
- [Get a list of messages](#get-a-list-of-messages)
|
@@ -37,6 +41,10 @@ MailerSend Ruby SDK
|
|
37
41
|
- [Get recipients](#get-recipients)
|
38
42
|
- [Get a single recipient](#get-a-single-recipient)
|
39
43
|
- [Delete a recipient](#delete-a-recipient)
|
44
|
+
- [Suppressions](#suppressions)
|
45
|
+
- [Get recipients from a suppression list](#get-recipients-from-a-suppression-list)
|
46
|
+
- [Add recipients to a suppression list](#add-recipients-to-a-suppression-list)
|
47
|
+
- [Delete recipients from a suppression list](#delete-recipients-from-a-suppression-list)
|
40
48
|
- [Webhooks](#webhooks)
|
41
49
|
- [List webhooks](#list-webhooks)
|
42
50
|
- [Get a webhook](#get-a-webhook)
|
@@ -62,7 +70,7 @@ You will have to initalize it in your Ruby file with `require "mailersend-ruby"`
|
|
62
70
|
|
63
71
|
# Usage
|
64
72
|
|
65
|
-
This SDK requires that you either have `.env` file with `
|
73
|
+
This SDK requires that you either have `.env` file with `MAILERSEND_API_TOKEN` env variable or that your variable is enabled system wide (useful for Docker/Kubernetes). The example of how `MAILERSEND_API_TOKEN` should look like is in `.env.example`.
|
66
74
|
|
67
75
|
## Email
|
68
76
|
|
@@ -127,32 +135,6 @@ ms_email.add_template_id(12415125)
|
|
127
135
|
ms_email.send
|
128
136
|
```
|
129
137
|
|
130
|
-
## Tokens
|
131
|
-
|
132
|
-
### Create a token
|
133
|
-
```ruby
|
134
|
-
require "mailersend-ruby"
|
135
|
-
|
136
|
-
ms_tokens = Mailersend::Tokens.new
|
137
|
-
ms_tokens.create(name: "Very nice token", scopes: %w[ email_full domains_read ], domain_id: "yourdomainid")
|
138
|
-
```
|
139
|
-
|
140
|
-
### Update a token
|
141
|
-
```ruby
|
142
|
-
require "mailersend-ruby"
|
143
|
-
|
144
|
-
ms_tokens = Mailersend::Tokens.new
|
145
|
-
ms_tokens.update(token_id: "d2220fx04", status: "paused")
|
146
|
-
```
|
147
|
-
|
148
|
-
### Delete a token
|
149
|
-
```ruby
|
150
|
-
require "mailersend-ruby"
|
151
|
-
|
152
|
-
ms_tokens = Mailersend::Tokens.new
|
153
|
-
ms_tokens.delete(token_id: "d2220fx04")
|
154
|
-
```
|
155
|
-
|
156
138
|
### Advanced personalization
|
157
139
|
|
158
140
|
```ruby
|
@@ -210,6 +192,68 @@ ms_email.add_variables(variables)
|
|
210
192
|
ms_email.send
|
211
193
|
```
|
212
194
|
|
195
|
+
## Bulk Email
|
196
|
+
|
197
|
+
### Send bulk email
|
198
|
+
```ruby
|
199
|
+
require "mailersend-ruby"
|
200
|
+
|
201
|
+
ms_bulk_email = Mailersend::BulkEmail.new
|
202
|
+
|
203
|
+
ms_bulk_email.messages = [
|
204
|
+
{
|
205
|
+
'from' => {"email" => "april@parksandrec.com", "name" => "April"},
|
206
|
+
'to' => [{"email" => "ron@parksandrec.com", "name" => "Ron"}],
|
207
|
+
'subject' => "Time",
|
208
|
+
'text' => "Time is money, money is power, power is pizza, and pizza is knowledge. Let's go.",
|
209
|
+
'html' => "<b>Time is money, money is power, power is pizza, and pizza is knowledge. Let's go.</b>",
|
210
|
+
},
|
211
|
+
{
|
212
|
+
'from' => {"email" => "april@parksandrec.com", "name" => "April"},
|
213
|
+
'to' => [{"email" => "leslie@parksandrec.com", "name" => "Leslie"}],
|
214
|
+
'subject' => "Lorem Ipsum",
|
215
|
+
'text' => "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
|
216
|
+
'html' => "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>",
|
217
|
+
}
|
218
|
+
]
|
219
|
+
|
220
|
+
ms_bulk_email.send
|
221
|
+
```
|
222
|
+
|
223
|
+
### Get bulk email status
|
224
|
+
```ruby
|
225
|
+
require "mailersend-ruby"
|
226
|
+
|
227
|
+
ms_bulk_email = Mailersend::BulkEmail.new
|
228
|
+
ms_bulk_email.get_bulk_status(bulk_email_id: 'yourbulkemailid')
|
229
|
+
```
|
230
|
+
|
231
|
+
## Tokens
|
232
|
+
|
233
|
+
### Create a token
|
234
|
+
```ruby
|
235
|
+
require "mailersend-ruby"
|
236
|
+
|
237
|
+
ms_tokens = Mailersend::Tokens.new
|
238
|
+
ms_tokens.create(name: "Very nice token", scopes: %w[ email_full domains_read ], domain_id: "yourdomainid")
|
239
|
+
```
|
240
|
+
|
241
|
+
### Update a token
|
242
|
+
```ruby
|
243
|
+
require "mailersend-ruby"
|
244
|
+
|
245
|
+
ms_tokens = Mailersend::Tokens.new
|
246
|
+
ms_tokens.update(token_id: "d2220fx04", status: "paused")
|
247
|
+
```
|
248
|
+
|
249
|
+
### Delete a token
|
250
|
+
```ruby
|
251
|
+
require "mailersend-ruby"
|
252
|
+
|
253
|
+
ms_tokens = Mailersend::Tokens.new
|
254
|
+
ms_tokens.delete(token_id: "d2220fx04")
|
255
|
+
```
|
256
|
+
|
213
257
|
### Send email with attachment
|
214
258
|
|
215
259
|
```ruby
|
@@ -313,6 +357,15 @@ ms_domains = Mailersend::Domains.new
|
|
313
357
|
ms_domains.delete(domain_id: "idofdomain12412")
|
314
358
|
```
|
315
359
|
|
360
|
+
### Get recipients for a domain
|
361
|
+
|
362
|
+
```ruby
|
363
|
+
require "mailersend-ruby"
|
364
|
+
|
365
|
+
ms_domains = Mailersend::Domains.new
|
366
|
+
ms_domains.recipients(domain_id: "idofdomain12412")
|
367
|
+
```
|
368
|
+
|
316
369
|
### Update domain settings
|
317
370
|
|
318
371
|
```ruby
|
@@ -371,6 +424,71 @@ ms_recipients = Mailersend::Recipients.new
|
|
371
424
|
ms_recipients.delete(recipient_id: "id124")
|
372
425
|
```
|
373
426
|
|
427
|
+
## Suppressions
|
428
|
+
|
429
|
+
### Get recipients from a suppression list
|
430
|
+
|
431
|
+
```ruby
|
432
|
+
require "mailersend-ruby"
|
433
|
+
|
434
|
+
ms_suppressions = Mailersend::Suppressions.new
|
435
|
+
|
436
|
+
// List from Blocklist
|
437
|
+
ms_suppressions.get_from_blocklist(domain_id: "xxx2241ll")
|
438
|
+
|
439
|
+
// List from Hard Bounces
|
440
|
+
ms_suppressions.get_hard_bounces(domain_id: "xxx2241ll")
|
441
|
+
|
442
|
+
// List from Spam Complaints
|
443
|
+
ms_suppressions.get_spam_complaints(domain_id: "xxx2241ll")
|
444
|
+
|
445
|
+
// List from Unsubscribers
|
446
|
+
ms_suppressions.get_unsubscribes(domain_id: "xxx2241ll")
|
447
|
+
```
|
448
|
+
|
449
|
+
### Add recipients to a suppression list
|
450
|
+
|
451
|
+
```ruby
|
452
|
+
require "mailersend-ruby"
|
453
|
+
|
454
|
+
ms_suppressions = Mailersend::Suppressions.new
|
455
|
+
|
456
|
+
// Add Recipient to Block List using recipients
|
457
|
+
ms_suppressions.add_to_blocklist(domain_id: "xxx2241ll", recipients: ["blocked@client.com"])
|
458
|
+
|
459
|
+
// Add Recipient to Block List using patterns
|
460
|
+
ms_suppressions.add_to_blocklist(domain_id: "xxx2241ll", patterns: ["*@client.com"])
|
461
|
+
|
462
|
+
// Add Recipient to Hard Bounces
|
463
|
+
ms_suppressions.add_to_hard_bounces(domain_id: "xxx2241ll", recipients: ["bounced@client.com"])
|
464
|
+
|
465
|
+
// Add Recipient to Spam Complaints
|
466
|
+
ms_suppressions.add_to_spam_complaints(domain_id: "xxx2241ll", recipients: ["bounced@client.com"])
|
467
|
+
|
468
|
+
// Add Recipient to Unsubscribes
|
469
|
+
ms_suppressions.add_to_unsubscribers(domain_id: "xxx2241ll", recipients: ["bounced@client.com"])
|
470
|
+
```
|
471
|
+
|
472
|
+
### Delete recipients from a suppression list
|
473
|
+
|
474
|
+
```ruby
|
475
|
+
require "mailersend-ruby"
|
476
|
+
|
477
|
+
ms_suppressions = Mailersend::Suppressions.new
|
478
|
+
|
479
|
+
// Delete from Block List
|
480
|
+
ms_suppressions.delete_from_blocklist(domain_id: 'yourdomainid', ids: ["xxx2241ll"])
|
481
|
+
|
482
|
+
// Delete from Hard Bounces
|
483
|
+
ms_suppressions.delete_from_hard_bounces(domain_id: 'yourdomainid', ids: ["xxx2241ll"])
|
484
|
+
|
485
|
+
// Delete from Spam Complaints
|
486
|
+
ms_suppressions.delete_from_spam_complaints(domain_id: 'yourdomainid', ids: ["xxx2241ll"])
|
487
|
+
|
488
|
+
// Delete from Unsubscribes
|
489
|
+
ms_suppressions.delete_from_unsubscribers(domain_id: 'yourdomainid', ids: ["xxx2241ll"])
|
490
|
+
```
|
491
|
+
|
374
492
|
## Webhooks
|
375
493
|
|
376
494
|
### List webhooks
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'base64'
|
4
|
+
|
5
|
+
module Mailersend
|
6
|
+
# Send an email through MailerSend API
|
7
|
+
class BulkEmail
|
8
|
+
attr_accessor :client,
|
9
|
+
:messages
|
10
|
+
|
11
|
+
def initialize(client = Mailersend::Client.new)
|
12
|
+
@client = client
|
13
|
+
@messages = []
|
14
|
+
end
|
15
|
+
|
16
|
+
def add_attachment(content:, filename:)
|
17
|
+
data = File.read(content.to_s)
|
18
|
+
encoded = Base64.strict_encode64(data)
|
19
|
+
@attachments << {
|
20
|
+
'content' => encoded,
|
21
|
+
'filename' => filename
|
22
|
+
}
|
23
|
+
end
|
24
|
+
|
25
|
+
def send
|
26
|
+
response = client.http.post("#{API_URL}/bulk-email", json: @messages)
|
27
|
+
puts response
|
28
|
+
puts response.status.code
|
29
|
+
end
|
30
|
+
|
31
|
+
def get_bulk_status(bulk_email_id:)
|
32
|
+
response = client.http.get(URI::HTTPS.build(host: API_BASE_HOST, path: "/v1/bulk-email/#{bulk_email_id}"))
|
33
|
+
puts response
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
data/lib/mailersend/client.rb
CHANGED
@@ -6,7 +6,7 @@ require 'dotenv/load'
|
|
6
6
|
API_URL = 'https://api.mailersend.com/v1'
|
7
7
|
API_BASE_HOST = 'api.mailersend.com'
|
8
8
|
|
9
|
-
Dotenv.require_keys('
|
9
|
+
Dotenv.require_keys('MAILERSEND_API_TOKEN')
|
10
10
|
|
11
11
|
# mailersend-ruby is a gem that integrates all endpoints from MailerSend API
|
12
12
|
module Mailersend
|
@@ -14,7 +14,7 @@ module Mailersend
|
|
14
14
|
|
15
15
|
# Inits the client.
|
16
16
|
class Client
|
17
|
-
def initialize(api_token = ENV['
|
17
|
+
def initialize(api_token = ENV['MAILERSEND_API_TOKEN'])
|
18
18
|
@api_token = api_token
|
19
19
|
end
|
20
20
|
|
@@ -52,8 +52,8 @@ module Mailersend
|
|
52
52
|
@bcc << bcc
|
53
53
|
end
|
54
54
|
|
55
|
-
def add_reply_to(
|
56
|
-
@reply_to =
|
55
|
+
def add_reply_to(reply_to)
|
56
|
+
@reply_to = reply_to
|
57
57
|
end
|
58
58
|
|
59
59
|
def add_subject(subject)
|
@@ -85,7 +85,7 @@ module Mailersend
|
|
85
85
|
end
|
86
86
|
|
87
87
|
def add_attachment(content:, filename:)
|
88
|
-
data = File.
|
88
|
+
data = File.read(content.to_s)
|
89
89
|
encoded = Base64.strict_encode64(data)
|
90
90
|
@attachments << {
|
91
91
|
'content' => encoded,
|
@@ -0,0 +1,114 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Mailersend
|
4
|
+
# Suppressions endpoint from MailerSend API.
|
5
|
+
class Suppressions
|
6
|
+
attr_accessor :client,
|
7
|
+
:page,
|
8
|
+
:limit,
|
9
|
+
:recipient_id
|
10
|
+
|
11
|
+
def initialize(client = Mailersend::Client.new)
|
12
|
+
@client = client
|
13
|
+
@page = page
|
14
|
+
@limit = limit
|
15
|
+
@recipient_id = recipient_id
|
16
|
+
end
|
17
|
+
|
18
|
+
def get_from_blocklist(*)
|
19
|
+
response = client.http.get("#{API_URL}/suppressions/blocklist")
|
20
|
+
puts response
|
21
|
+
end
|
22
|
+
|
23
|
+
def get_hard_bounces(*)
|
24
|
+
response = client.http.get("#{API_URL}/suppressions/hard-bounces")
|
25
|
+
puts response
|
26
|
+
end
|
27
|
+
|
28
|
+
def get_spam_complaints(*)
|
29
|
+
response = client.http.get("#{API_URL}/suppressions/spam-complaints")
|
30
|
+
puts response
|
31
|
+
end
|
32
|
+
|
33
|
+
def get_unsubscribes(*)
|
34
|
+
response = client.http.get("#{API_URL}/suppressions/unsubscribes")
|
35
|
+
puts response
|
36
|
+
end
|
37
|
+
|
38
|
+
def add_to_blocklist(recipients: nil, patterns: nil)
|
39
|
+
hash = {
|
40
|
+
'recipients' => recipients,
|
41
|
+
'patterns' => patterns
|
42
|
+
}
|
43
|
+
response = client.http.post("#{API_URL}/suppressions/blocklist", json: hash.compact)
|
44
|
+
puts response
|
45
|
+
end
|
46
|
+
|
47
|
+
def delete_from_blocklist(domain_id: nil, ids: nil, all: nil)
|
48
|
+
hash = {
|
49
|
+
'domain_id' => domain_id,
|
50
|
+
'ids' => ids,
|
51
|
+
'all' => all
|
52
|
+
}
|
53
|
+
response = client.http.delete("#{API_URL}/suppressions/blocklist", json: hash.compact)
|
54
|
+
puts response
|
55
|
+
end
|
56
|
+
|
57
|
+
def add_to_hard_bounces(domain_id: nil, recipients: nil)
|
58
|
+
hash = {
|
59
|
+
'domain_id' => domain_id,
|
60
|
+
'recipients' => recipients
|
61
|
+
}
|
62
|
+
response = client.http.post("#{API_URL}/suppressions/hard-bounces", json: hash.compact)
|
63
|
+
puts response
|
64
|
+
end
|
65
|
+
|
66
|
+
def delete_from_hard_bounces(domain_id: nil, ids: nil, all: nil)
|
67
|
+
hash = {
|
68
|
+
'domain_id' => domain_id,
|
69
|
+
'ids' => ids,
|
70
|
+
'all' => all
|
71
|
+
}
|
72
|
+
response = client.http.delete("#{API_URL}/suppressions/hard-bounces", json: hash.compact)
|
73
|
+
puts response
|
74
|
+
end
|
75
|
+
|
76
|
+
def add_to_spam_complaints(domain_id: nil, recipients: nil)
|
77
|
+
hash = {
|
78
|
+
'domain_id' => domain_id,
|
79
|
+
'recipients' => recipients
|
80
|
+
}
|
81
|
+
response = client.http.post("#{API_URL}/suppressions/spam-complaints", json: hash.compact)
|
82
|
+
puts response
|
83
|
+
end
|
84
|
+
|
85
|
+
def delete_from_spam_complaints(domain_id: nil, ids: nil, all: nil)
|
86
|
+
hash = {
|
87
|
+
'domain_id' => domain_id,
|
88
|
+
'ids' => ids,
|
89
|
+
'all' => all
|
90
|
+
}
|
91
|
+
response = client.http.delete("#{API_URL}/suppressions/spam-complaints", json: hash.compact)
|
92
|
+
puts response
|
93
|
+
end
|
94
|
+
|
95
|
+
def add_to_unsubscribers(domain_id: nil, recipients: nil)
|
96
|
+
hash = {
|
97
|
+
'domain_id' => domain_id,
|
98
|
+
'recipients' => recipients
|
99
|
+
}
|
100
|
+
response = client.http.post("#{API_URL}/suppressions/unsubscribes", json: hash.compact)
|
101
|
+
puts response
|
102
|
+
end
|
103
|
+
|
104
|
+
def delete_from_unsubscribers(domain_id: nil, ids: nil, all: nil)
|
105
|
+
hash = {
|
106
|
+
'domain_id' => domain_id,
|
107
|
+
'ids' => ids,
|
108
|
+
'all' => all
|
109
|
+
}
|
110
|
+
response = client.http.delete("#{API_URL}/suppressions/unsubscribes", json: hash.compact)
|
111
|
+
puts response
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
data/lib/mailersend/version.rb
CHANGED
data/lib/mailersend.rb
CHANGED
@@ -1,12 +1,14 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
3
|
+
require_relative 'mailersend/client'
|
4
|
+
require_relative 'mailersend/activity/activity'
|
5
|
+
require_relative 'mailersend/analytics/analytics'
|
6
|
+
require_relative 'mailersend/bulk_email/bulk_email'
|
7
|
+
require_relative 'mailersend/domains/domains'
|
8
|
+
require_relative 'mailersend/email/email'
|
9
|
+
require_relative 'mailersend/messages/messages'
|
10
|
+
require_relative 'mailersend/recipients/recipients'
|
11
|
+
require_relative 'mailersend/suppressions/suppressions'
|
12
|
+
require_relative 'mailersend/templates/templates'
|
13
|
+
require_relative 'mailersend/tokens/tokens'
|
14
|
+
require_relative 'mailersend/webhooks/webhooks'
|
data/mailersend-ruby.gemspec
CHANGED
@@ -21,12 +21,13 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.metadata['homepage_uri'] = spec.homepage
|
22
22
|
spec.metadata['source_code_uri'] = 'https://github.com/mailersend/mailersend-ruby'
|
23
23
|
spec.metadata['changelog_uri'] = 'https://github.com/mailersend/mailersend-ruby/blob/main/CHANGELOG.md'
|
24
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
24
25
|
|
25
26
|
spec.files = `git ls-files -z`.split("\x0")
|
26
27
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
27
28
|
spec.require_paths = ['lib']
|
28
29
|
|
29
|
-
spec.add_development_dependency 'bundler', '~> 2.
|
30
|
+
spec.add_development_dependency 'bundler', '~> 2.3.4'
|
30
31
|
spec.add_development_dependency 'rake', '~> 13.0'
|
31
32
|
spec.add_development_dependency 'rubocop', '~> 1.7'
|
32
33
|
spec.add_dependency 'dotenv', '~> 2.7'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mailersend-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nikola Milojević
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.3.4
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
26
|
+
version: 2.3.4
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -120,6 +120,7 @@ extra_rdoc_files: []
|
|
120
120
|
files:
|
121
121
|
- ".env.example"
|
122
122
|
- ".github/workflows/main.yml"
|
123
|
+
- ".github/workflows/publish_gem.yml"
|
123
124
|
- ".gitignore"
|
124
125
|
- ".rubocop.yml"
|
125
126
|
- CHANGELOG.md
|
@@ -133,16 +134,19 @@ files:
|
|
133
134
|
- lib/mailersend.rb
|
134
135
|
- lib/mailersend/activity/activity.rb
|
135
136
|
- lib/mailersend/analytics/analytics.rb
|
137
|
+
- lib/mailersend/bulk_email/bulk_email.rb
|
136
138
|
- lib/mailersend/client.rb
|
137
139
|
- lib/mailersend/domains/domains.rb
|
138
140
|
- lib/mailersend/email/email.rb
|
139
141
|
- lib/mailersend/messages/messages.rb
|
140
142
|
- lib/mailersend/recipients/recipients.rb
|
143
|
+
- lib/mailersend/suppressions/suppressions.rb
|
141
144
|
- lib/mailersend/templates/templates.rb
|
142
145
|
- lib/mailersend/tokens/tokens.rb
|
143
146
|
- lib/mailersend/version.rb
|
144
147
|
- lib/mailersend/webhooks/webhooks.rb
|
145
148
|
- mailersend-ruby.gemspec
|
149
|
+
- renovate.json
|
146
150
|
homepage: https://www.mailersend.com
|
147
151
|
licenses:
|
148
152
|
- MIT
|
@@ -151,7 +155,8 @@ metadata:
|
|
151
155
|
homepage_uri: https://www.mailersend.com
|
152
156
|
source_code_uri: https://github.com/mailersend/mailersend-ruby
|
153
157
|
changelog_uri: https://github.com/mailersend/mailersend-ruby/blob/main/CHANGELOG.md
|
154
|
-
|
158
|
+
rubygems_mfa_required: 'true'
|
159
|
+
post_install_message:
|
155
160
|
rdoc_options: []
|
156
161
|
require_paths:
|
157
162
|
- lib
|
@@ -166,8 +171,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
166
171
|
- !ruby/object:Gem::Version
|
167
172
|
version: '0'
|
168
173
|
requirements: []
|
169
|
-
rubygems_version: 3.
|
170
|
-
signing_key:
|
174
|
+
rubygems_version: 3.3.3
|
175
|
+
signing_key:
|
171
176
|
specification_version: 4
|
172
177
|
summary: MailerSend's official Ruby SDK
|
173
178
|
test_files: []
|