mailerlite 1.0.2 → 1.1.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/.rubocop.yml +6 -2
- data/Gemfile +2 -2
- data/README.md +8 -0
- data/examples/README.md +13 -0
- data/examples/campaigns.md +31 -0
- data/examples/create_campaign.md +44 -0
- data/examples/fields.md +25 -0
- data/examples/groups.md +60 -0
- data/examples/subscribers.md +66 -0
- data/lib/mailerlite/clients/campaigns.rb +22 -0
- data/lib/mailerlite/clients/groups.rb +56 -1
- data/lib/mailerlite/connection.rb +2 -1
- data/lib/mailerlite/mash.rb +7 -0
- data/lib/mailerlite/version.rb +1 -1
- data/mailerlite.gemspec +2 -1
- metadata +12 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a739963fd127ae8c42af6a2ceacfded67e42eb96
|
4
|
+
data.tar.gz: 21d605553139028079007949fc7515877aa5c218
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e3ee319eda69a4cb89625a105c09baa29a2291efb40ec1c55235c2336c177ece212ad376793722b56490eb3b792f10a596624d7861b8d35ecb28e414f4faa03d
|
7
|
+
data.tar.gz: 2d189d579c72281e66a45065f5b7ed3f785a36b9ab64d397e2dadf08d8b1d2e99c0bee41d4e0f3f2db742b680333524838ac1ec5191c8abeccb480febb75f8e7
|
data/.rubocop.yml
CHANGED
@@ -20,11 +20,15 @@ Style/MultilineMethodCallIndentation:
|
|
20
20
|
|
21
21
|
Style/CaseIndentation:
|
22
22
|
Enabled: true
|
23
|
-
|
23
|
+
EnforcedStyle: end
|
24
24
|
|
25
25
|
Lint/EndAlignment:
|
26
26
|
Enabled: true
|
27
|
-
|
27
|
+
EnforcedStyleAlignWith: variable
|
28
28
|
|
29
29
|
Style/FrozenStringLiteralComment:
|
30
30
|
Enabled: false
|
31
|
+
|
32
|
+
Metrics/BlockLength:
|
33
|
+
ExcludedMethods:
|
34
|
+
- 'describe'
|
data/Gemfile
CHANGED
@@ -2,7 +2,7 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
group :development do
|
4
4
|
gem 'guard-rspec', '~> 4.7'
|
5
|
-
gem 'rubocop', '~> 0.
|
5
|
+
gem 'rubocop', '~> 0.48'
|
6
6
|
end
|
7
7
|
|
8
8
|
group :development, :test do
|
@@ -14,7 +14,7 @@ group :test do
|
|
14
14
|
gem 'coveralls', '~> 0.8', require: false
|
15
15
|
gem 'rake' # For Travis CI
|
16
16
|
gem 'rspec', '~> 3.5'
|
17
|
-
gem 'simplecov', '~> 0.
|
17
|
+
gem 'simplecov', '~> 0.14', require: false
|
18
18
|
gem 'webmock', '~> 2.3'
|
19
19
|
end
|
20
20
|
|
data/README.md
CHANGED
@@ -18,6 +18,10 @@ gem 'mailerlite'
|
|
18
18
|
|
19
19
|
## Usage
|
20
20
|
|
21
|
+
Before making any request, you should authenticate first. Use the response object to
|
22
|
+
make requests afterward.
|
23
|
+
See [create a campaign][create_a_campaign] example.
|
24
|
+
|
21
25
|
### Authentication
|
22
26
|
|
23
27
|
When you sign up for an account, you are given an **API key**. You authenticate to
|
@@ -36,6 +40,8 @@ MailerLite.configure do |config|
|
|
36
40
|
end
|
37
41
|
```
|
38
42
|
|
43
|
+
See more documentation in [examples][examples] directory.
|
44
|
+
|
39
45
|
## Supported Ruby Versions
|
40
46
|
|
41
47
|
This library aims to support and is [tested against][travis] the following Ruby
|
@@ -57,5 +63,7 @@ Copyright (c) 2017 Justas Palumickas. See [LICENSE][license] for details.
|
|
57
63
|
[codeclimate]: https://codeclimate.com/github/jpalumickas/mailerlite-ruby
|
58
64
|
|
59
65
|
[license]: https://raw.githubusercontent.com/jpalumickas/mailerlite-ruby/master/LICENSE
|
66
|
+
[create_a_campaign]: https://raw.githubusercontent.com/jpalumickas/mailerlite-ruby/master/examples/create_campaign.md
|
67
|
+
[examples]: https://github.com/jpalumickas/mailerlite-ruby/tree/master/examples
|
60
68
|
|
61
69
|
[mailerlite]: https://www.mailerlite.com
|
data/examples/README.md
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
# MailerLite Examples
|
2
|
+
|
3
|
+
## Documentation
|
4
|
+
|
5
|
+
* [Authentication](authentication.md)
|
6
|
+
* [Campaigns](campaigns.md)
|
7
|
+
* [Fields](fields.md)
|
8
|
+
* [Groups](groups.md)
|
9
|
+
* [Subscribers](subscribers.md)
|
10
|
+
|
11
|
+
## How To
|
12
|
+
|
13
|
+
* [How to create a campaign](create_campaign.md)
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# Campaigns
|
2
|
+
|
3
|
+
## Create campaign where you will use your custom HTML template
|
4
|
+
|
5
|
+
```ruby
|
6
|
+
client.create_campaign
|
7
|
+
```
|
8
|
+
|
9
|
+
## Upload your HTML template to created campaign
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
client.update_campaign_content(id, options)
|
13
|
+
```
|
14
|
+
|
15
|
+
## Send, schedule or cancel campaign
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
client.campaign_action(id, action)
|
19
|
+
```
|
20
|
+
|
21
|
+
## Returns all campaigns you have in your account by :status which is required. Also basic summary for each campaign including the ID
|
22
|
+
|
23
|
+
```ruby
|
24
|
+
client.campaign_by_status(status)
|
25
|
+
```
|
26
|
+
|
27
|
+
## Remove a campaign
|
28
|
+
|
29
|
+
```ruby
|
30
|
+
client.delete_campaign(id)
|
31
|
+
```
|
@@ -0,0 +1,44 @@
|
|
1
|
+
#Create Campaign Example
|
2
|
+
|
3
|
+
##1. Authentication
|
4
|
+
See [Developer API](https://app.mailerlite.com/integrations/api/) and find **API Key** there.
|
5
|
+
```ruby
|
6
|
+
client = MailerLite::Client.new(api_key: 'my-secret-api-key')
|
7
|
+
```
|
8
|
+
|
9
|
+
##2. Create a group
|
10
|
+
create a group indicating the receivers.
|
11
|
+
```ruby
|
12
|
+
group = client.create_group('example_group')
|
13
|
+
```
|
14
|
+
##3. Add user to the created group
|
15
|
+
```ruby
|
16
|
+
client.create_group_subscriber(group.id, { email: 'an@example.com',
|
17
|
+
fields: {name: 'An Example'}})
|
18
|
+
```
|
19
|
+
##4. Create a campaign with created group
|
20
|
+
```ruby
|
21
|
+
campaign = client.create_campaign(
|
22
|
+
type: 'regular',
|
23
|
+
subject: 'Newsletter',
|
24
|
+
from: 'john_smith@example.com',
|
25
|
+
from_name: 'John Smith',
|
26
|
+
groups: [ group.id ],
|
27
|
+
language: 'en'
|
28
|
+
)
|
29
|
+
```
|
30
|
+
##5. Put content in the campaign
|
31
|
+
```ruby
|
32
|
+
html = "<div>Welcome,<br /><a href=\"{$unsubscribe}\">Unsubscribe</a></div>"
|
33
|
+
plain_text = 'Welcome, {$unsubscribe} {$url}'
|
34
|
+
client.update_campaign_content(campaign.id, html: html, plain: plain_text )
|
35
|
+
```
|
36
|
+
`${url}` must be exist in plain text.
|
37
|
+
`${unsubscribe}` must be exist in both plain text and html. See the [API documentation](http://developers.mailerlite.com/reference#put-custom-content-to-campaign).
|
38
|
+
|
39
|
+
##6. Send the campaign
|
40
|
+
```ruby
|
41
|
+
client.campaign_action(campaign.id, 'send')
|
42
|
+
```
|
43
|
+
hint: According to current API, you may not resend a campaign.
|
44
|
+
note: Currently, setting campaigns language parameter to "fa" for "Farsi" language causes an Internal Server Error on "send campaign" requests, use "pr" instead.
|
data/examples/fields.md
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# Fields
|
2
|
+
|
3
|
+
## Get subscriber fields of account
|
4
|
+
|
5
|
+
```ruby
|
6
|
+
client.fields
|
7
|
+
```
|
8
|
+
|
9
|
+
## Create new custom field in account
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
options = { title: 'Title', type: 'TEXT' }
|
13
|
+
client.create_field(options)
|
14
|
+
```
|
15
|
+
|
16
|
+
## Update custom field in account
|
17
|
+
|
18
|
+
```ruby
|
19
|
+
client.update_field(id, { title: 'New title' })
|
20
|
+
```
|
21
|
+
|
22
|
+
##Remove custom field from account
|
23
|
+
```ruby
|
24
|
+
client.delete_field(id)
|
25
|
+
```
|
data/examples/groups.md
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
# Groups Examples
|
2
|
+
|
3
|
+
## Get list of groups
|
4
|
+
|
5
|
+
```ruby
|
6
|
+
client.groups
|
7
|
+
```
|
8
|
+
|
9
|
+
## Get single group by ID
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
client.group(group_id)
|
13
|
+
```
|
14
|
+
|
15
|
+
## Create new group
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
client.create_group(name)
|
19
|
+
```
|
20
|
+
|
21
|
+
## Remove a group
|
22
|
+
```ruby
|
23
|
+
client.delete_group(group_id)
|
24
|
+
```
|
25
|
+
|
26
|
+
## Get all subscribers in a specified group
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
client.group_subscribers(group_id)
|
30
|
+
```
|
31
|
+
|
32
|
+
## Add new single subscriber to specified group
|
33
|
+
|
34
|
+
```ruby
|
35
|
+
subscriber = { email: 'subsriber@example.com' }
|
36
|
+
client.create_group_subscriber(1, subscriber)
|
37
|
+
```
|
38
|
+
|
39
|
+
## Add many new subscribers to specified group at once
|
40
|
+
|
41
|
+
```ruby
|
42
|
+
subscribers = [
|
43
|
+
{ email: 'subscriber1@example.com' },
|
44
|
+
{ email: 'subscriber2@example.com' }
|
45
|
+
]
|
46
|
+
|
47
|
+
client.import_group_subscribers(1, subscribers, resubscribe: true)
|
48
|
+
```
|
49
|
+
|
50
|
+
## Remove single subscriber from specified group
|
51
|
+
|
52
|
+
```ruby
|
53
|
+
client.delete_group_subscriber(group_id, 'demo@mailerlite.com')
|
54
|
+
```
|
55
|
+
|
56
|
+
or
|
57
|
+
|
58
|
+
```ruby
|
59
|
+
client.delete_group_subscriber(group_id, subscriber_id)
|
60
|
+
```
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# Subscribers
|
2
|
+
|
3
|
+
## Get single subscriber
|
4
|
+
|
5
|
+
```ruby
|
6
|
+
client.subscriber(subscriber_id)
|
7
|
+
```
|
8
|
+
|
9
|
+
or with email
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
client.subscriber('user@example.com')
|
13
|
+
```
|
14
|
+
|
15
|
+
## Update single subscriber
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
client.update_subscriber(subscriber_id options)
|
19
|
+
```
|
20
|
+
|
21
|
+
or with email
|
22
|
+
|
23
|
+
```ruby
|
24
|
+
client.update_subscriber('user@example.com', options)
|
25
|
+
```
|
26
|
+
|
27
|
+
`options` can be:
|
28
|
+
|
29
|
+
- `fields` [Array]: Associated array where key is the same as field key.
|
30
|
+
- `type` [String]: Available values: `unsubscribed`, `active`
|
31
|
+
- `resend_autoresponders` [Boolean]: Defines if it is needed to resend autoresponders
|
32
|
+
|
33
|
+
## Search for subscribers
|
34
|
+
|
35
|
+
```ruby
|
36
|
+
options = {
|
37
|
+
query: 'example',
|
38
|
+
limit: 1,
|
39
|
+
minimized: true
|
40
|
+
}
|
41
|
+
|
42
|
+
client.search_subscribers(query, options)
|
43
|
+
```
|
44
|
+
|
45
|
+
## Get groups subscriber belongs to
|
46
|
+
|
47
|
+
```ruby
|
48
|
+
client.subscriber_groups(subscriber_id)
|
49
|
+
```
|
50
|
+
|
51
|
+
or with email
|
52
|
+
|
53
|
+
```ruby
|
54
|
+
client.subscriber_groups('user@example.com')
|
55
|
+
```
|
56
|
+
|
57
|
+
## Get activites (clicks, opens, etc.) of selected subscriber
|
58
|
+
```ruby
|
59
|
+
client.subscriber_activities(subscriber_id)
|
60
|
+
```
|
61
|
+
|
62
|
+
or with email
|
63
|
+
|
64
|
+
```ruby
|
65
|
+
client.subscriber_activities('user@example.com')
|
66
|
+
```
|
@@ -49,6 +49,28 @@ module MailerLite
|
|
49
49
|
def campaign_action(id, action)
|
50
50
|
connection.post("campaigns/#{id}/actions/#{action}")
|
51
51
|
end
|
52
|
+
|
53
|
+
# Returns all campaigns you have in your account by :status which is
|
54
|
+
# required. Also basic summary for each campaign including the ID.
|
55
|
+
#
|
56
|
+
# @see http://developers.mailerlite.com/reference#campaigns-by-type
|
57
|
+
#
|
58
|
+
# @param status [String] possible values: 'sent', 'outbox', 'draft'
|
59
|
+
# no value means 'sent'
|
60
|
+
#
|
61
|
+
# @return Response from API.
|
62
|
+
def campaigns_by_status(status)
|
63
|
+
connection.get("campaigns/#{status}")
|
64
|
+
end
|
65
|
+
|
66
|
+
# Remove a campaign.
|
67
|
+
#
|
68
|
+
# @param id [Integer] id of campaign
|
69
|
+
#
|
70
|
+
# @return [Boolean] Response from API.
|
71
|
+
def delete_campaign(id)
|
72
|
+
connection.delete("campaigns/#{id}")
|
73
|
+
end
|
52
74
|
end
|
53
75
|
end
|
54
76
|
end
|
@@ -11,11 +11,25 @@ module MailerLite
|
|
11
11
|
connection.get('groups')
|
12
12
|
end
|
13
13
|
|
14
|
+
# Get single group by ID
|
15
|
+
#
|
16
|
+
# @see http://developers.mailerlite.com/reference#single-group
|
17
|
+
#
|
18
|
+
# @param id [Integer] Id of group
|
19
|
+
#
|
20
|
+
# @return [Hash] Response from API.
|
14
21
|
def group(id)
|
15
22
|
result = connection.get("groups/#{id}")
|
16
23
|
result.is_a?(Array) ? result[0] : result
|
17
24
|
end
|
18
25
|
|
26
|
+
# Create new group
|
27
|
+
#
|
28
|
+
# @see http://developers.mailerlite.com/reference#create-group
|
29
|
+
#
|
30
|
+
# @param name [String] Name of your group
|
31
|
+
#
|
32
|
+
# @return [Hash] Response from API.
|
19
33
|
def create_group(name)
|
20
34
|
connection.post('groups', name: name)
|
21
35
|
end
|
@@ -24,26 +38,67 @@ module MailerLite
|
|
24
38
|
connection.put("groups/#{id}", options)
|
25
39
|
end
|
26
40
|
|
41
|
+
# Remove group
|
42
|
+
#
|
43
|
+
# @see http://developers.mailerlite.com/reference#delete-group
|
44
|
+
#
|
45
|
+
# @param [Integer] Id of group
|
46
|
+
#
|
47
|
+
# @return [Boolean] Response from API.
|
27
48
|
def delete_group(id)
|
28
49
|
connection.delete("groups/#{id}")
|
29
50
|
end
|
30
51
|
|
52
|
+
# Get all subscribers in a specified group
|
53
|
+
#
|
54
|
+
# @see http://developers.mailerlite.com/reference#subscribers-in-a-group
|
55
|
+
#
|
56
|
+
# @param group_id [Integer] Id of group
|
57
|
+
# @param options [Hash] Request options
|
58
|
+
#
|
59
|
+
# @return [Array] Subscribers
|
31
60
|
def group_subscribers(group_id, options = {})
|
32
61
|
connection.get("groups/#{group_id}/subscribers", options)
|
33
62
|
end
|
34
63
|
|
64
|
+
# Add new single subscriber to specified group
|
65
|
+
#
|
66
|
+
# @see http://developers.mailerlite.com/reference#add-single-subscriber
|
67
|
+
#
|
68
|
+
# @param group_id [Integer] Id of group
|
69
|
+
# @param options [Hash] Request options
|
70
|
+
#
|
71
|
+
# @return [Hash] Response from API
|
35
72
|
def create_group_subscriber(group_id, options = {})
|
36
73
|
connection.post("groups/#{group_id}/subscribers", options)
|
37
74
|
end
|
38
75
|
|
76
|
+
# Add many new subscribers to specified group at once
|
77
|
+
#
|
78
|
+
# @see http://developers.mailerlite.com/reference#add-many-subscribers
|
79
|
+
#
|
80
|
+
# @param group_id [Integer] Id of group
|
81
|
+
# @param subscribers [Array] Array of hash each indicates a subscriber
|
82
|
+
# @param options [Hash] Request options
|
83
|
+
#
|
84
|
+
# @return [Hash] Response from API.
|
39
85
|
def import_group_subscribers(group_id, subscribers, options = {})
|
40
86
|
options[:subscribers] = subscribers
|
41
87
|
connection.post("groups/#{group_id}/subscribers/import", options)
|
42
88
|
end
|
43
89
|
|
90
|
+
# Remove single subscriber from specified group
|
91
|
+
#
|
92
|
+
# @see http://developers.mailerlite.com/reference#remove-subscriber
|
93
|
+
#
|
94
|
+
# @param group_id [Integer|String] Id of group
|
95
|
+
# @param subscriber_id_or_email [Array] Id or email of subscriber
|
96
|
+
#
|
97
|
+
# @return [Hash] Response from API.
|
44
98
|
def delete_group_subscriber(group_id, subscriber_id_or_email)
|
99
|
+
escaped_subscriber_id_or_email = CGI.escape(subscriber_id_or_email)
|
45
100
|
connection.delete(
|
46
|
-
"groups/#{group_id}/subscribers/#{
|
101
|
+
"groups/#{group_id}/subscribers/#{escaped_subscriber_id_or_email}"
|
47
102
|
)
|
48
103
|
end
|
49
104
|
end
|
@@ -2,6 +2,7 @@ require 'faraday'
|
|
2
2
|
require 'faraday_middleware'
|
3
3
|
require 'json'
|
4
4
|
|
5
|
+
require 'mailerlite/mash'
|
5
6
|
require 'mailerlite/middleware/raise_error'
|
6
7
|
require 'mailerlite/middleware/underscore_keys'
|
7
8
|
require 'mailerlite/middleware/fix_unparsed_json'
|
@@ -63,7 +64,7 @@ module MailerLite
|
|
63
64
|
builder.request :json
|
64
65
|
|
65
66
|
builder.use FaradayMiddleware::FollowRedirects
|
66
|
-
builder.use FaradayMiddleware::Mashify
|
67
|
+
builder.use FaradayMiddleware::Mashify, mash_class: MailerLite::Mash
|
67
68
|
builder.use MailerLite::Middleware::UnderscoreKeys
|
68
69
|
builder.use FaradayMiddleware::ParseJson
|
69
70
|
builder.use MailerLite::Middleware::FixUnparsedJson
|
data/lib/mailerlite/version.rb
CHANGED
data/mailerlite.gemspec
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
# coding: utf-8
|
2
|
+
|
2
3
|
lib = File.expand_path('../lib', __FILE__)
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
5
|
require 'mailerlite/version'
|
@@ -25,7 +26,7 @@ Gem::Specification.new do |spec|
|
|
25
26
|
|
26
27
|
spec.add_dependency 'faraday', '~> 0.10'
|
27
28
|
spec.add_dependency 'faraday_middleware', '~> 0.10'
|
28
|
-
spec.add_dependency 'hashie', '~> 3.
|
29
|
+
spec.add_dependency 'hashie', '~> 3.5.5'
|
29
30
|
|
30
31
|
spec.add_development_dependency 'bundler', '~> 1.11'
|
31
32
|
spec.add_development_dependency 'rake', '~> 10.0'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mailerlite
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justas Palumickas
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-04-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 3.5.5
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 3.5.5
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -99,7 +99,13 @@ files:
|
|
99
99
|
- Rakefile
|
100
100
|
- bin/console
|
101
101
|
- bin/setup
|
102
|
+
- examples/README.md
|
102
103
|
- examples/authentication.md
|
104
|
+
- examples/campaigns.md
|
105
|
+
- examples/create_campaign.md
|
106
|
+
- examples/fields.md
|
107
|
+
- examples/groups.md
|
108
|
+
- examples/subscribers.md
|
103
109
|
- lib/mailerlite.rb
|
104
110
|
- lib/mailerlite/client.rb
|
105
111
|
- lib/mailerlite/clients/campaigns.rb
|
@@ -110,6 +116,7 @@ files:
|
|
110
116
|
- lib/mailerlite/connection.rb
|
111
117
|
- lib/mailerlite/core_ext/string.rb
|
112
118
|
- lib/mailerlite/error.rb
|
119
|
+
- lib/mailerlite/mash.rb
|
113
120
|
- lib/mailerlite/middleware/fix_unparsed_json.rb
|
114
121
|
- lib/mailerlite/middleware/raise_error.rb
|
115
122
|
- lib/mailerlite/middleware/underscore_keys.rb
|
@@ -135,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
142
|
version: '0'
|
136
143
|
requirements: []
|
137
144
|
rubyforge_project:
|
138
|
-
rubygems_version: 2.6.
|
145
|
+
rubygems_version: 2.6.11
|
139
146
|
signing_key:
|
140
147
|
specification_version: 4
|
141
148
|
summary: Ruby wrapper for MailerLite API v2
|