createsend 4.1.2 → 5.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/HISTORY.md +6 -0
- data/lib/createsend/createsend.rb +1 -1
- data/lib/createsend/list.rb +13 -12
- data/lib/createsend/segment.rb +3 -2
- data/lib/createsend/subscriber.rb +15 -10
- data/lib/createsend/version.rb +1 -1
- data/test/fixtures/subscriber_details_with_track_pref.json +22 -0
- data/test/fixtures/unconfirmed_subscribers.json +4 -2
- data/test/helper.rb +1 -1
- data/test/list_test.rb +7 -6
- data/test/segment_test.rb +1 -1
- data/test/subscriber_test.rb +17 -8
- metadata +100 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e4281f173aaf06254761ef8bde5b7da4233f18c7
|
4
|
+
data.tar.gz: 36e0b3673d514f1619cc2d1bb26f9721afdaa79b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e7a4b1cfa6bcea21ebc3d6b0c27063d3053784ff3cc6fd85bc111b632fa27a18b9cbf2a133384accb7e9877ee8ce8d368150f340b8931f89ae56b2e3d6332f64
|
7
|
+
data.tar.gz: '0032093a7da459b0d6f58cbbc478d13b779aacacc839dbc12d4d8296ffc2feae4664541dd1a627e886f29fb6e78f19dc64a3745840acbc0591c6af7c08b7d4e5'
|
data/HISTORY.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# createsend-ruby history
|
2
2
|
|
3
|
+
## v5.0.0 - 19 Jun, 2018
|
4
|
+
* Upgrades to Createsend API v3.2 which includes new breaking changes
|
5
|
+
* Breaking: 'Consent to track' field is now mandatory for sending smart and classic transactionl emails
|
6
|
+
* Breaking: 'Consent to track' field is now mandatory when adding or updating subscribers
|
7
|
+
* Optional 'Include tracking preference' field when retrieving lists of subscribers
|
8
|
+
|
3
9
|
## v4.1.2 - 27 Nov, 2017
|
4
10
|
* Fix for the GZip compression issue: https://github.com/jnunemaker/httparty/issues/562
|
5
11
|
|
@@ -109,7 +109,7 @@ module CreateSend
|
|
109
109
|
end
|
110
110
|
end
|
111
111
|
|
112
|
-
@@base_uri = "https://api.createsend.com/api/v3.
|
112
|
+
@@base_uri = "https://api.createsend.com/api/v3.2"
|
113
113
|
@@oauth_base_uri = "https://api.createsend.com/oauth"
|
114
114
|
@@oauth_token_uri = "#{@@oauth_base_uri}/token"
|
115
115
|
headers({
|
data/lib/createsend/list.rb
CHANGED
@@ -116,37 +116,37 @@ module CreateSend
|
|
116
116
|
|
117
117
|
# Gets the active subscribers for this list.
|
118
118
|
def active(date="", page=1, page_size=1000, order_field="email",
|
119
|
-
order_direction="asc")
|
119
|
+
order_direction="asc", include_tracking_preference=false)
|
120
120
|
paged_result_by_date("active", date, page, page_size, order_field,
|
121
|
-
order_direction)
|
121
|
+
order_direction, include_tracking_preference)
|
122
122
|
end
|
123
123
|
|
124
124
|
# Gets the unconfirmed subscribers for this list.
|
125
125
|
def unconfirmed(date="", page=1, page_size=1000, order_field="email",
|
126
|
-
order_direction="asc")
|
126
|
+
order_direction="asc", include_tracking_preference=false)
|
127
127
|
paged_result_by_date("unconfirmed", date, page, page_size, order_field,
|
128
|
-
order_direction)
|
128
|
+
order_direction, include_tracking_preference)
|
129
129
|
end
|
130
130
|
|
131
131
|
# Gets the bounced subscribers for this list.
|
132
132
|
def bounced(date="", page=1, page_size=1000, order_field="email",
|
133
|
-
order_direction="asc")
|
133
|
+
order_direction="asc", include_tracking_preference=false)
|
134
134
|
paged_result_by_date("bounced", date, page, page_size, order_field,
|
135
|
-
order_direction)
|
135
|
+
order_direction, include_tracking_preference)
|
136
136
|
end
|
137
137
|
|
138
138
|
# Gets the unsubscribed subscribers for this list.
|
139
139
|
def unsubscribed(date="", page=1, page_size=1000, order_field="email",
|
140
|
-
order_direction="asc")
|
140
|
+
order_direction="asc", include_tracking_preference=false)
|
141
141
|
paged_result_by_date("unsubscribed", date, page, page_size, order_field,
|
142
|
-
order_direction)
|
142
|
+
order_direction, include_tracking_preference)
|
143
143
|
end
|
144
144
|
|
145
145
|
# Gets the deleted subscribers for this list.
|
146
146
|
def deleted(date="", page=1, page_size=1000, order_field="email",
|
147
|
-
order_direction="asc")
|
147
|
+
order_direction="asc", include_tracking_preference=false)
|
148
148
|
paged_result_by_date("deleted", date, page, page_size, order_field,
|
149
|
-
order_direction)
|
149
|
+
order_direction, include_tracking_preference)
|
150
150
|
end
|
151
151
|
|
152
152
|
# Updates this list.
|
@@ -225,13 +225,14 @@ module CreateSend
|
|
225
225
|
private
|
226
226
|
|
227
227
|
def paged_result_by_date(resource, date, page, page_size, order_field,
|
228
|
-
order_direction)
|
228
|
+
order_direction, include_tracking_preference)
|
229
229
|
options = { :query => {
|
230
230
|
:date => date,
|
231
231
|
:page => page,
|
232
232
|
:pagesize => page_size,
|
233
233
|
:orderfield => order_field,
|
234
|
-
:orderdirection => order_direction
|
234
|
+
:orderdirection => order_direction,
|
235
|
+
:includetrackingpreference => include_tracking_preference } }
|
235
236
|
response = get resource, options
|
236
237
|
Hashie::Mash.new(response)
|
237
238
|
end
|
data/lib/createsend/segment.rb
CHANGED
@@ -35,13 +35,14 @@ module CreateSend
|
|
35
35
|
|
36
36
|
# Gets the active subscribers in this segment.
|
37
37
|
def subscribers(date="", page=1, page_size=1000, order_field="email",
|
38
|
-
order_direction="asc")
|
38
|
+
order_direction="asc", include_tracking_preference=false)
|
39
39
|
options = { :query => {
|
40
40
|
:date => date,
|
41
41
|
:page => page,
|
42
42
|
:pagesize => page_size,
|
43
43
|
:orderfield => order_field,
|
44
|
-
:orderdirection => order_direction
|
44
|
+
:orderdirection => order_direction,
|
45
|
+
:includetrackingpreference => include_tracking_preference } }
|
45
46
|
response = get "active", options
|
46
47
|
Hashie::Mash.new(response)
|
47
48
|
end
|
@@ -11,23 +11,27 @@ module CreateSend
|
|
11
11
|
end
|
12
12
|
|
13
13
|
# Gets a subscriber by list ID and email address.
|
14
|
-
def self.get(auth, list_id, email_address)
|
15
|
-
options = { :query => {
|
14
|
+
def self.get(auth, list_id, email_address, include_tracking_preference=false)
|
15
|
+
options = { :query => {
|
16
|
+
:email => email_address,
|
17
|
+
:includetrackingpreference => include_tracking_preference }
|
18
|
+
}
|
16
19
|
cs = CreateSend.new auth
|
17
20
|
response = cs.get "/subscribers/#{list_id}.json", options
|
18
21
|
Hashie::Mash.new(response)
|
19
22
|
end
|
20
23
|
|
21
24
|
# Adds a subscriber to a subscriber list.
|
22
|
-
def self.add(auth, list_id, email_address, name, custom_fields, resubscribe,
|
23
|
-
restart_subscription_based_autoresponders=false)
|
25
|
+
def self.add(auth, list_id, email_address, name, custom_fields, resubscribe,
|
26
|
+
consent_to_track, restart_subscription_based_autoresponders=false)
|
24
27
|
options = { :body => {
|
25
28
|
:EmailAddress => email_address,
|
26
29
|
:Name => name,
|
27
30
|
:CustomFields => custom_fields,
|
28
31
|
:Resubscribe => resubscribe,
|
29
|
-
:RestartSubscriptionBasedAutoresponders =>
|
30
|
-
restart_subscription_based_autoresponders
|
32
|
+
:RestartSubscriptionBasedAutoresponders =>
|
33
|
+
restart_subscription_based_autoresponders,
|
34
|
+
:ConsentToTrack => consent_to_track }.to_json }
|
31
35
|
cs = CreateSend.new auth
|
32
36
|
response = cs.post "/subscribers/#{list_id}.json", options
|
33
37
|
response.parsed_response
|
@@ -65,8 +69,8 @@ module CreateSend
|
|
65
69
|
|
66
70
|
# Updates any aspect of a subscriber, including email address, name, and
|
67
71
|
# custom field data if supplied.
|
68
|
-
def update(new_email_address, name, custom_fields, resubscribe,
|
69
|
-
restart_subscription_based_autoresponders=false)
|
72
|
+
def update(new_email_address, name, custom_fields, resubscribe,
|
73
|
+
consent_to_track, restart_subscription_based_autoresponders=false)
|
70
74
|
options = {
|
71
75
|
:query => { :email => @email_address },
|
72
76
|
:body => {
|
@@ -74,8 +78,9 @@ module CreateSend
|
|
74
78
|
:Name => name,
|
75
79
|
:CustomFields => custom_fields,
|
76
80
|
:Resubscribe => resubscribe,
|
77
|
-
:RestartSubscriptionBasedAutoresponders =>
|
78
|
-
restart_subscription_based_autoresponders
|
81
|
+
:RestartSubscriptionBasedAutoresponders =>
|
82
|
+
restart_subscription_based_autoresponders,
|
83
|
+
:ConsentToTrack => consent_to_track }.to_json }
|
79
84
|
put "/subscribers/#{@list_id}.json", options
|
80
85
|
# Update @email_address, so this object can continue to be used reliably
|
81
86
|
@email_address = new_email_address
|
data/lib/createsend/version.rb
CHANGED
@@ -0,0 +1,22 @@
|
|
1
|
+
{
|
2
|
+
"EmailAddress": "subscriber@example.com",
|
3
|
+
"Name": "Subscriber One",
|
4
|
+
"Date": "2010-10-25 10:28:00",
|
5
|
+
"State": "Active",
|
6
|
+
"CustomFields": [
|
7
|
+
{
|
8
|
+
"Key": "website",
|
9
|
+
"Value": "http://example.com"
|
10
|
+
},
|
11
|
+
{
|
12
|
+
"Key": "age",
|
13
|
+
"Value": "24"
|
14
|
+
},
|
15
|
+
{
|
16
|
+
"Key": "subscription date",
|
17
|
+
"Value": "2010-03-09"
|
18
|
+
}
|
19
|
+
],
|
20
|
+
"ReadsEmailWith": "Gmail",
|
21
|
+
"ConsentToTrack": "Yes"
|
22
|
+
}
|
@@ -11,7 +11,8 @@
|
|
11
11
|
"Value": "http://example.com"
|
12
12
|
}
|
13
13
|
],
|
14
|
-
"ReadsEmailWith": ""
|
14
|
+
"ReadsEmailWith": "",
|
15
|
+
"ConsentToTrack": "Yes"
|
15
16
|
},
|
16
17
|
{
|
17
18
|
"EmailAddress": "subs+7878787y8ggg@example.com",
|
@@ -24,7 +25,8 @@
|
|
24
25
|
"Value": "http://subdomain.example.com"
|
25
26
|
}
|
26
27
|
],
|
27
|
-
"ReadsEmailWith": ""
|
28
|
+
"ReadsEmailWith": "",
|
29
|
+
"ConsentToTrack": "No"
|
28
30
|
}
|
29
31
|
],
|
30
32
|
"ResultsOrderedBy": "email",
|
data/test/helper.rb
CHANGED
@@ -30,7 +30,7 @@ def createsend_url(auth, url)
|
|
30
30
|
if not url =~ /^http/
|
31
31
|
auth_section = ''
|
32
32
|
auth_section = "#{auth[:api_key]}:x@" if auth and auth.has_key? :api_key
|
33
|
-
result = "https://#{auth_section}api.createsend.com/api/v3.
|
33
|
+
result = "https://#{auth_section}api.createsend.com/api/v3.2/#{url}"
|
34
34
|
else
|
35
35
|
result = url
|
36
36
|
end
|
data/test/list_test.rb
CHANGED
@@ -129,7 +129,7 @@ class ListTest < Test::Unit::TestCase
|
|
129
129
|
|
130
130
|
should "get the active subscribers for a list" do
|
131
131
|
min_date = "2010-01-01"
|
132
|
-
stub_get(@auth, "lists/#{@list.list_id}/active.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}",
|
132
|
+
stub_get(@auth, "lists/#{@list.list_id}/active.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}&includetrackingpreference=false",
|
133
133
|
"active_subscribers.json")
|
134
134
|
res = @list.active min_date
|
135
135
|
res.ResultsOrderedBy.should == "email"
|
@@ -156,9 +156,9 @@ class ListTest < Test::Unit::TestCase
|
|
156
156
|
|
157
157
|
should "get the unconfirmed subscribers for a list" do
|
158
158
|
min_date = "2010-01-01"
|
159
|
-
stub_get(@auth, "lists/#{@list.list_id}/unconfirmed.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}",
|
159
|
+
stub_get(@auth, "lists/#{@list.list_id}/unconfirmed.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}&includetrackingpreference=true",
|
160
160
|
"unconfirmed_subscribers.json")
|
161
|
-
res = @list.unconfirmed
|
161
|
+
res = @list.unconfirmed(min_date, 1, 1000, "email", "asc", true)
|
162
162
|
res.ResultsOrderedBy.should == "email"
|
163
163
|
res.OrderDirection.should == "asc"
|
164
164
|
res.PageNumber.should == 1
|
@@ -170,11 +170,12 @@ class ListTest < Test::Unit::TestCase
|
|
170
170
|
res.Results.first.EmailAddress.should == "subs+7t8787Y@example.com"
|
171
171
|
res.Results.first.Name.should =="Unconfirmed One"
|
172
172
|
res.Results.first.State.should == "Unconfirmed"
|
173
|
+
res.Results.first.ConsentToTrack.should == "Yes"
|
173
174
|
end
|
174
175
|
|
175
176
|
should "get the unsubscribed subscribers for a list" do
|
176
177
|
min_date = "2010-01-01"
|
177
|
-
stub_get(@auth, "lists/#{@list.list_id}/unsubscribed.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}",
|
178
|
+
stub_get(@auth, "lists/#{@list.list_id}/unsubscribed.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}&includetrackingpreference=false",
|
178
179
|
"unsubscribed_subscribers.json")
|
179
180
|
res = @list.unsubscribed min_date
|
180
181
|
res.ResultsOrderedBy.should == "email"
|
@@ -195,7 +196,7 @@ class ListTest < Test::Unit::TestCase
|
|
195
196
|
|
196
197
|
should "get the deleted subscribers for a list" do
|
197
198
|
min_date = "2010-01-01"
|
198
|
-
stub_get(@auth, "lists/#{@list.list_id}/deleted.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}",
|
199
|
+
stub_get(@auth, "lists/#{@list.list_id}/deleted.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}&includetrackingpreference=false",
|
199
200
|
"deleted_subscribers.json")
|
200
201
|
res = @list.deleted min_date
|
201
202
|
res.ResultsOrderedBy.should == "email"
|
@@ -216,7 +217,7 @@ class ListTest < Test::Unit::TestCase
|
|
216
217
|
|
217
218
|
should "get the bounced subscribers for a list" do
|
218
219
|
min_date = "2010-01-01"
|
219
|
-
stub_get(@auth, "lists/#{@list.list_id}/bounced.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}",
|
220
|
+
stub_get(@auth, "lists/#{@list.list_id}/bounced.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}&includetrackingpreference=false",
|
220
221
|
"bounced_subscribers.json")
|
221
222
|
res = @list.bounced min_date
|
222
223
|
res.ResultsOrderedBy.should == "email"
|
data/test/segment_test.rb
CHANGED
@@ -28,7 +28,7 @@ class SegmentTest < Test::Unit::TestCase
|
|
28
28
|
|
29
29
|
should "get the active subscribers for a particular segment in the list" do
|
30
30
|
min_date = "2010-01-01"
|
31
|
-
stub_get(@auth, "segments/#{@segment.segment_id}/active.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}",
|
31
|
+
stub_get(@auth, "segments/#{@segment.segment_id}/active.json?pagesize=1000&orderfield=email&page=1&orderdirection=asc&date=#{CGI.escape(min_date)}&includetrackingpreference=false",
|
32
32
|
"segment_subscribers.json")
|
33
33
|
res = @segment.subscribers min_date
|
34
34
|
res.ResultsOrderedBy.should == "email"
|
data/test/subscriber_test.rb
CHANGED
@@ -9,7 +9,7 @@ class SubscriberTest < Test::Unit::TestCase
|
|
9
9
|
|
10
10
|
should "get a subscriber by list id and email address" do
|
11
11
|
email = "subscriber@example.com"
|
12
|
-
stub_get(@auth, "subscribers/#{@list_id}.json?email=#{CGI.escape(email)}", "subscriber_details.json")
|
12
|
+
stub_get(@auth, "subscribers/#{@list_id}.json?email=#{CGI.escape(email)}&includetrackingpreference=false", "subscriber_details.json")
|
13
13
|
subscriber = CreateSend::Subscriber.get @auth, @list_id, email
|
14
14
|
subscriber.EmailAddress.should == email
|
15
15
|
subscriber.Name.should == "Subscriber One"
|
@@ -21,16 +21,25 @@ class SubscriberTest < Test::Unit::TestCase
|
|
21
21
|
subscriber.ReadsEmailWith.should == "Gmail"
|
22
22
|
end
|
23
23
|
|
24
|
+
should "get a subscriber with track preference information" do
|
25
|
+
email = "subscriber@example.com"
|
26
|
+
stub_get(@auth, "subscribers/#{@list_id}.json?email=#{CGI.escape(email)}&includetrackingpreference=true", "subscriber_details_with_track_pref.json")
|
27
|
+
subscriber = CreateSend::Subscriber.get @auth, @list_id, email, true
|
28
|
+
subscriber.EmailAddress.should == email
|
29
|
+
subscriber.Name.should == "Subscriber One"
|
30
|
+
subscriber.ConsentToTrack == "Yes"
|
31
|
+
end
|
32
|
+
|
24
33
|
should "add a subscriber without custom fields" do
|
25
34
|
stub_post(@auth, "subscribers/#{@list_id}.json", "add_subscriber.json")
|
26
|
-
email_address = CreateSend::Subscriber.add @auth, @list_id, "subscriber@example.com", "Subscriber", [], true
|
35
|
+
email_address = CreateSend::Subscriber.add @auth, @list_id, "subscriber@example.com", "Subscriber", [], true, "Yes"
|
27
36
|
email_address.should == "subscriber@example.com"
|
28
37
|
end
|
29
38
|
|
30
39
|
should "add a subscriber with custom fields" do
|
31
40
|
stub_post(@auth, "subscribers/#{@list_id}.json", "add_subscriber.json")
|
32
41
|
custom_fields = [ { :Key => 'website', :Value => 'http://example.com/' } ]
|
33
|
-
email_address = CreateSend::Subscriber.add @auth, @list_id, "subscriber@example.com", "Subscriber", custom_fields, true
|
42
|
+
email_address = CreateSend::Subscriber.add @auth, @list_id, "subscriber@example.com", "Subscriber", custom_fields, true, "Yes"
|
34
43
|
email_address.should == "subscriber@example.com"
|
35
44
|
end
|
36
45
|
|
@@ -39,7 +48,7 @@ class SubscriberTest < Test::Unit::TestCase
|
|
39
48
|
custom_fields = [ { :Key => 'multioptionselectone', :Value => 'myoption' },
|
40
49
|
{ :Key => 'multioptionselectmany', :Value => 'firstoption' },
|
41
50
|
{ :Key => 'multioptionselectmany', :Value => 'secondoption' } ]
|
42
|
-
email_address = CreateSend::Subscriber.add @auth, @list_id, "subscriber@example.com", "Subscriber", custom_fields, true
|
51
|
+
email_address = CreateSend::Subscriber.add @auth, @list_id, "subscriber@example.com", "Subscriber", custom_fields, true, "Yes"
|
43
52
|
email_address.should == "subscriber@example.com"
|
44
53
|
end
|
45
54
|
|
@@ -48,7 +57,7 @@ class SubscriberTest < Test::Unit::TestCase
|
|
48
57
|
new_email = "new_email_address@example.com"
|
49
58
|
stub_put(@auth, "subscribers/#{@list_id}.json?email=#{CGI.escape(email)}", nil)
|
50
59
|
custom_fields = [ { :Key => 'website', :Value => 'http://example.com/' } ]
|
51
|
-
@subscriber.update new_email, "Subscriber", custom_fields, true
|
60
|
+
@subscriber.update new_email, "Subscriber", custom_fields, true, "Yes"
|
52
61
|
@subscriber.email_address.should == new_email
|
53
62
|
end
|
54
63
|
|
@@ -57,7 +66,7 @@ class SubscriberTest < Test::Unit::TestCase
|
|
57
66
|
new_email = "new_email_address@example.com"
|
58
67
|
stub_put(@auth, "subscribers/#{@list_id}.json?email=#{CGI.escape(email)}", nil)
|
59
68
|
custom_fields = [ { :Key => 'website', :Value => '', :Clear => true } ]
|
60
|
-
@subscriber.update new_email, "Subscriber", custom_fields, true
|
69
|
+
@subscriber.update new_email, "Subscriber", custom_fields, true, "No"
|
61
70
|
@subscriber.email_address.should == new_email
|
62
71
|
end
|
63
72
|
|
@@ -133,8 +142,8 @@ class SubscriberTest < Test::Unit::TestCase
|
|
133
142
|
{ :EmailAddress => "example+2@example.com", :Name => "Example Two" },
|
134
143
|
{ :EmailAddress => "example+3@example.com", :Name => "Example Three" },
|
135
144
|
]
|
136
|
-
lambda { import_result = CreateSend::Subscriber.import @auth, @list_id, subscribers,
|
137
|
-
}.should raise_error(CreateSend::BadRequest)
|
145
|
+
lambda { import_result = CreateSend::Subscriber.import @auth, @list_id, subscribers,
|
146
|
+
true }.should raise_error(CreateSend::BadRequest)
|
138
147
|
end
|
139
148
|
|
140
149
|
should "unsubscribe a subscriber" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: createsend
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 5.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Dennes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-06-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -245,6 +245,7 @@ files:
|
|
245
245
|
- test/fixtures/segment_subscribers.json
|
246
246
|
- test/fixtures/segments.json
|
247
247
|
- test/fixtures/subscriber_details.json
|
248
|
+
- test/fixtures/subscriber_details_with_track_pref.json
|
248
249
|
- test/fixtures/subscriber_history.json
|
249
250
|
- test/fixtures/suppressionlist.json
|
250
251
|
- test/fixtures/systemdate.json
|
@@ -297,9 +298,104 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
297
298
|
version: 1.3.6
|
298
299
|
requirements: []
|
299
300
|
rubyforge_project:
|
300
|
-
rubygems_version: 2.
|
301
|
+
rubygems_version: 2.6.14
|
301
302
|
signing_key:
|
302
303
|
specification_version: 4
|
303
304
|
summary: A library which implements the complete functionality of the Campaign Monitor
|
304
305
|
API.
|
305
|
-
test_files:
|
306
|
+
test_files:
|
307
|
+
- test/administrator_test.rb
|
308
|
+
- test/campaign_test.rb
|
309
|
+
- test/client_test.rb
|
310
|
+
- test/createsend_test.rb
|
311
|
+
- test/fixtures/active_subscribers.json
|
312
|
+
- test/fixtures/add_admin.json
|
313
|
+
- test/fixtures/add_person.json
|
314
|
+
- test/fixtures/add_subscriber.json
|
315
|
+
- test/fixtures/admin_details.json
|
316
|
+
- test/fixtures/admin_get_primary_contact.json
|
317
|
+
- test/fixtures/admin_set_primary_contact.json
|
318
|
+
- test/fixtures/administrators.json
|
319
|
+
- test/fixtures/billingdetails.json
|
320
|
+
- test/fixtures/bounced_subscribers.json
|
321
|
+
- test/fixtures/campaign_bounces.json
|
322
|
+
- test/fixtures/campaign_clicks.json
|
323
|
+
- test/fixtures/campaign_listsandsegments.json
|
324
|
+
- test/fixtures/campaign_opens.json
|
325
|
+
- test/fixtures/campaign_recipients.json
|
326
|
+
- test/fixtures/campaign_spam.json
|
327
|
+
- test/fixtures/campaign_summary.json
|
328
|
+
- test/fixtures/campaign_unsubscribes.json
|
329
|
+
- test/fixtures/campaigns.json
|
330
|
+
- test/fixtures/client_details.json
|
331
|
+
- test/fixtures/client_get_primary_contact.json
|
332
|
+
- test/fixtures/client_set_primary_contact.json
|
333
|
+
- test/fixtures/clients.json
|
334
|
+
- test/fixtures/countries.json
|
335
|
+
- test/fixtures/create_campaign.json
|
336
|
+
- test/fixtures/create_client.json
|
337
|
+
- test/fixtures/create_custom_field.json
|
338
|
+
- test/fixtures/create_list.json
|
339
|
+
- test/fixtures/create_list_webhook.json
|
340
|
+
- test/fixtures/create_segment.json
|
341
|
+
- test/fixtures/create_template.json
|
342
|
+
- test/fixtures/custom_api_error.json
|
343
|
+
- test/fixtures/custom_fields.json
|
344
|
+
- test/fixtures/deleted_subscribers.json
|
345
|
+
- test/fixtures/drafts.json
|
346
|
+
- test/fixtures/email_client_usage.json
|
347
|
+
- test/fixtures/expired_oauth_token_api_error.json
|
348
|
+
- test/fixtures/external_session.json
|
349
|
+
- test/fixtures/import_subscribers.json
|
350
|
+
- test/fixtures/import_subscribers_partial_success.json
|
351
|
+
- test/fixtures/invalid_oauth_token_api_error.json
|
352
|
+
- test/fixtures/list_details.json
|
353
|
+
- test/fixtures/list_stats.json
|
354
|
+
- test/fixtures/list_webhooks.json
|
355
|
+
- test/fixtures/lists.json
|
356
|
+
- test/fixtures/listsforemail.json
|
357
|
+
- test/fixtures/oauth_exchange_token.json
|
358
|
+
- test/fixtures/oauth_exchange_token_error.json
|
359
|
+
- test/fixtures/oauth_refresh_token_error.json
|
360
|
+
- test/fixtures/people.json
|
361
|
+
- test/fixtures/person_details.json
|
362
|
+
- test/fixtures/refresh_oauth_token.json
|
363
|
+
- test/fixtures/revoked_oauth_token_api_error.json
|
364
|
+
- test/fixtures/scheduled_campaigns.json
|
365
|
+
- test/fixtures/segment_details.json
|
366
|
+
- test/fixtures/segment_subscribers.json
|
367
|
+
- test/fixtures/segments.json
|
368
|
+
- test/fixtures/subscriber_details.json
|
369
|
+
- test/fixtures/subscriber_details_with_track_pref.json
|
370
|
+
- test/fixtures/subscriber_history.json
|
371
|
+
- test/fixtures/suppressionlist.json
|
372
|
+
- test/fixtures/systemdate.json
|
373
|
+
- test/fixtures/template_details.json
|
374
|
+
- test/fixtures/templates.json
|
375
|
+
- test/fixtures/timezones.json
|
376
|
+
- test/fixtures/transfer_credits.json
|
377
|
+
- test/fixtures/tx_classicemail_groups.json
|
378
|
+
- test/fixtures/tx_message_details.json
|
379
|
+
- test/fixtures/tx_message_details_with_statistics.json
|
380
|
+
- test/fixtures/tx_messages.json
|
381
|
+
- test/fixtures/tx_messages_classic.json
|
382
|
+
- test/fixtures/tx_messages_smart.json
|
383
|
+
- test/fixtures/tx_resend_message.json
|
384
|
+
- test/fixtures/tx_send_multiple.json
|
385
|
+
- test/fixtures/tx_send_single.json
|
386
|
+
- test/fixtures/tx_smartemail_details.json
|
387
|
+
- test/fixtures/tx_smartemails.json
|
388
|
+
- test/fixtures/tx_statistics_classic.json
|
389
|
+
- test/fixtures/tx_statistics_smart.json
|
390
|
+
- test/fixtures/unconfirmed_subscribers.json
|
391
|
+
- test/fixtures/unsubscribed_subscribers.json
|
392
|
+
- test/fixtures/update_custom_field.json
|
393
|
+
- test/helper.rb
|
394
|
+
- test/list_test.rb
|
395
|
+
- test/person_test.rb
|
396
|
+
- test/segment_test.rb
|
397
|
+
- test/subscriber_test.rb
|
398
|
+
- test/template_test.rb
|
399
|
+
- test/transactional_classic_email_test.rb
|
400
|
+
- test/transactional_smart_email_test.rb
|
401
|
+
- test/transactional_timeline_test.rb
|