mailersend-ruby 0.2.2 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- 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: []
|