sendgrid-ruby 3.0.4 → 3.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/README.md +4 -3
- data/USAGE.md +234 -24
- data/examples/accesssettings/accesssettings.rb +0 -13
- data/examples/alerts/alerts.rb +62 -0
- data/examples/apikeys/apikeys.rb +3 -14
- data/examples/asm/asm.rb +17 -13
- data/examples/browsers/browsers.rb +0 -13
- data/examples/campaigns/campaigns.rb +1 -14
- data/examples/categories/categories.rb +0 -13
- data/examples/clients/clients.rb +0 -13
- data/examples/contactdb/contactdb.rb +6 -19
- data/examples/devices/devices.rb +0 -13
- data/examples/geo/geo.rb +0 -13
- data/examples/ips/ips.rb +0 -13
- data/examples/mail/mail.rb +68 -86
- data/examples/mailboxproviders/mailboxproviders.rb +0 -13
- data/examples/mailsettings/mailsettings.rb +0 -13
- data/examples/partnersettings/partnersettings.rb +0 -13
- data/examples/scopes/scopes.rb +0 -13
- data/examples/stats/stats.rb +0 -13
- data/examples/subusers/subusers.rb +2 -15
- data/examples/suppression/suppression.rb +1 -14
- data/examples/templates/templates.rb +0 -13
- data/examples/trackingsettings/trackingsettings.rb +0 -13
- data/examples/user/user.rb +51 -14
- data/examples/whitelabel/whitelabel.rb +0 -13
- data/lib/sendgrid/client.rb +2 -1
- data/lib/sendgrid/version.rb +1 -1
- data/test/sendgrid/test_sendgrid-ruby.rb +133 -27
- metadata +3 -2
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Retrieve email statistics by mailbox provider. #
|
22
9
|
# GET /mailbox_providers/stats #
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Retrieve all mail settings #
|
22
9
|
# GET /mail_settings #
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Returns a list of all partner settings. #
|
22
9
|
# GET /partner_settings #
|
data/examples/scopes/scopes.rb
CHANGED
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Retrieve a list of scopes for which this user has access. #
|
22
9
|
# GET /scopes #
|
data/examples/stats/stats.rb
CHANGED
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Retrieve global email statistics #
|
22
9
|
# GET /stats #
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Create Subuser #
|
22
9
|
# POST /subusers #
|
@@ -39,7 +26,7 @@ puts response.headers
|
|
39
26
|
# List all Subusers #
|
40
27
|
# GET /subusers #
|
41
28
|
|
42
|
-
params = JSON.parse('{"username": "test_string", "limit":
|
29
|
+
params = JSON.parse('{"username": "test_string", "limit": 1, "offset": 1}')
|
43
30
|
response = sg.client.subusers.get(query_params: params)
|
44
31
|
puts response.status_code
|
45
32
|
puts response.body
|
@@ -173,7 +160,7 @@ puts response.headers
|
|
173
160
|
# Retrieve the monthly email statistics for a single subuser #
|
174
161
|
# GET /subusers/{subuser_name}/stats/monthly #
|
175
162
|
|
176
|
-
params = JSON.parse('{"date": "test_string", "sort_by_direction": "asc", "limit":
|
163
|
+
params = JSON.parse('{"date": "test_string", "sort_by_direction": "asc", "limit": 1, "sort_by_metric": "test_string", "offset": 1}')
|
177
164
|
subuser_name = "test_url_param"
|
178
165
|
response = sg.client.subusers._(subuser_name).stats.monthly.get(query_params: params)
|
179
166
|
puts response.status_code
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Retrieve all blocks #
|
22
9
|
# GET /suppression/blocks #
|
@@ -60,7 +47,7 @@ puts response.headers
|
|
60
47
|
# Retrieve all bounces #
|
61
48
|
# GET /suppression/bounces #
|
62
49
|
|
63
|
-
params = JSON.parse('{"start_time":
|
50
|
+
params = JSON.parse('{"start_time": 1, "end_time": 1}')
|
64
51
|
response = sg.client.suppression.bounces.get(query_params: params)
|
65
52
|
puts response.status_code
|
66
53
|
puts response.body
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Create a transactional template. #
|
22
9
|
# POST /templates #
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Retrieve Tracking Settings #
|
22
9
|
# GET /tracking_settings #
|
data/examples/user/user.rb
CHANGED
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Get a user's account information. #
|
22
9
|
# GET /user/account #
|
@@ -236,7 +223,22 @@ puts response.body
|
|
236
223
|
puts response.headers
|
237
224
|
|
238
225
|
##################################################
|
239
|
-
#
|
226
|
+
# Create a parse setting #
|
227
|
+
# POST /user/webhooks/parse/settings #
|
228
|
+
|
229
|
+
data = JSON.parse('{
|
230
|
+
"hostname": "myhostname.com",
|
231
|
+
"send_raw": false,
|
232
|
+
"spam_check": true,
|
233
|
+
"url": "http://email.myhosthame.com"
|
234
|
+
}')
|
235
|
+
response = sg.client.user.webhooks.parse.settings.post(request_body: data)
|
236
|
+
puts response.status_code
|
237
|
+
puts response.body
|
238
|
+
puts response.headers
|
239
|
+
|
240
|
+
##################################################
|
241
|
+
# Retrieve all parse settings #
|
240
242
|
# GET /user/webhooks/parse/settings #
|
241
243
|
|
242
244
|
response = sg.client.user.webhooks.parse.settings.get()
|
@@ -244,6 +246,41 @@ puts response.status_code
|
|
244
246
|
puts response.body
|
245
247
|
puts response.headers
|
246
248
|
|
249
|
+
##################################################
|
250
|
+
# Update a parse setting #
|
251
|
+
# PATCH /user/webhooks/parse/settings/{hostname} #
|
252
|
+
|
253
|
+
data = JSON.parse('{
|
254
|
+
"send_raw": true,
|
255
|
+
"spam_check": false,
|
256
|
+
"url": "http://newdomain.com/parse"
|
257
|
+
}')
|
258
|
+
hostname = "test_url_param"
|
259
|
+
response = sg.client.user.webhooks.parse.settings._(hostname).patch(request_body: data)
|
260
|
+
puts response.status_code
|
261
|
+
puts response.body
|
262
|
+
puts response.headers
|
263
|
+
|
264
|
+
##################################################
|
265
|
+
# Retrieve a specific parse setting #
|
266
|
+
# GET /user/webhooks/parse/settings/{hostname} #
|
267
|
+
|
268
|
+
hostname = "test_url_param"
|
269
|
+
response = sg.client.user.webhooks.parse.settings._(hostname).get()
|
270
|
+
puts response.status_code
|
271
|
+
puts response.body
|
272
|
+
puts response.headers
|
273
|
+
|
274
|
+
##################################################
|
275
|
+
# Delete a parse setting #
|
276
|
+
# DELETE /user/webhooks/parse/settings/{hostname} #
|
277
|
+
|
278
|
+
hostname = "test_url_param"
|
279
|
+
response = sg.client.user.webhooks.parse.settings._(hostname).delete()
|
280
|
+
puts response.status_code
|
281
|
+
puts response.body
|
282
|
+
puts response.headers
|
283
|
+
|
247
284
|
##################################################
|
248
285
|
# Retrieves Inbound Parse Webhook statistics. #
|
249
286
|
# GET /user/webhooks/parse/stats #
|
@@ -4,19 +4,6 @@ require 'sendgrid-ruby'
|
|
4
4
|
sg = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY'])
|
5
5
|
|
6
6
|
|
7
|
-
import com.fasterxml.jackson.databind.JsonNode;
|
8
|
-
import com.fasterxml.jackson.databind.ObjectMapper;
|
9
|
-
|
10
|
-
import com.sendgrid.Client;
|
11
|
-
import com.sendgrid.Method;
|
12
|
-
import com.sendgrid.Request;
|
13
|
-
import com.sendgrid.Response;
|
14
|
-
import com.sendgrid.SendGrid;
|
15
|
-
|
16
|
-
import java.io.IOException;
|
17
|
-
import java.util.HashMap;
|
18
|
-
import java.util.Map;
|
19
|
-
|
20
7
|
##################################################
|
21
8
|
# Create a domain whitelabel. #
|
22
9
|
# POST /whitelabel/domains #
|
data/lib/sendgrid/client.rb
CHANGED
data/lib/sendgrid/version.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require_relative
|
1
|
+
require_relative '../../lib/sendgrid-ruby.rb'
|
2
2
|
require 'ruby_http_client'
|
3
3
|
require 'minitest/autorun'
|
4
4
|
|
@@ -24,11 +24,13 @@ class TestAPI < Minitest::Test
|
|
24
24
|
test_headers = JSON.parse('
|
25
25
|
{
|
26
26
|
"Authorization": "Bearer SENDGRID_API_KEY",
|
27
|
+
"Accept": "application/json",
|
27
28
|
"X-Test": "test"
|
28
29
|
}
|
29
30
|
')
|
30
31
|
assert_equal(test_headers, sg.request_headers)
|
31
32
|
assert_equal("v3", sg.version)
|
33
|
+
assert_equal("3.0.5", SendGrid::VERSION)
|
32
34
|
assert_instance_of(SendGrid::Client, sg.client)
|
33
35
|
end
|
34
36
|
|
@@ -91,9 +93,51 @@ class TestAPI < Minitest::Test
|
|
91
93
|
self.assert_equal(response.status_code, "204")
|
92
94
|
end
|
93
95
|
|
96
|
+
def test_alerts_post
|
97
|
+
data = JSON.parse('{
|
98
|
+
"email_to": "example@example.com",
|
99
|
+
"frequency": "daily",
|
100
|
+
"type": "stats_notification"
|
101
|
+
}')
|
102
|
+
headers = JSON.parse('{"X-Mock": 201}')
|
103
|
+
response = @sg.client.alerts.post(request_body: data, request_headers: headers)
|
104
|
+
self.assert_equal(response.status_code, "201")
|
105
|
+
end
|
106
|
+
|
107
|
+
def test_alerts_get
|
108
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
109
|
+
response = @sg.client.alerts.get(request_headers: headers)
|
110
|
+
self.assert_equal(response.status_code, "200")
|
111
|
+
end
|
112
|
+
|
113
|
+
def test_alerts__alert_id__patch
|
114
|
+
data = JSON.parse('{
|
115
|
+
"email_to": "example@example.com"
|
116
|
+
}')
|
117
|
+
alert_id = "test_url_param"
|
118
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
119
|
+
response = @sg.client.alerts._(alert_id).patch(request_body: data, request_headers: headers)
|
120
|
+
self.assert_equal(response.status_code, "200")
|
121
|
+
end
|
122
|
+
|
123
|
+
def test_alerts__alert_id__get
|
124
|
+
alert_id = "test_url_param"
|
125
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
126
|
+
response = @sg.client.alerts._(alert_id).get(request_headers: headers)
|
127
|
+
self.assert_equal(response.status_code, "200")
|
128
|
+
end
|
129
|
+
|
130
|
+
def test_alerts__alert_id__delete
|
131
|
+
alert_id = "test_url_param"
|
132
|
+
headers = JSON.parse('{"X-Mock": 204}')
|
133
|
+
response = @sg.client.alerts._(alert_id).delete(request_headers: headers)
|
134
|
+
self.assert_equal(response.status_code, "204")
|
135
|
+
end
|
136
|
+
|
94
137
|
def test_api_keys_post
|
95
138
|
data = JSON.parse('{
|
96
139
|
"name": "My API Key",
|
140
|
+
"sample": "data",
|
97
141
|
"scopes": [
|
98
142
|
"mail.send",
|
99
143
|
"alerts.create",
|
@@ -106,8 +150,9 @@ class TestAPI < Minitest::Test
|
|
106
150
|
end
|
107
151
|
|
108
152
|
def test_api_keys_get
|
153
|
+
params = JSON.parse('{"limit": 1}')
|
109
154
|
headers = JSON.parse('{"X-Mock": 200}')
|
110
|
-
response = @sg.client.api_keys.get(request_headers: headers)
|
155
|
+
response = @sg.client.api_keys.get(query_params: params, request_headers: headers)
|
111
156
|
self.assert_equal(response.status_code, "200")
|
112
157
|
end
|
113
158
|
|
@@ -151,18 +196,19 @@ class TestAPI < Minitest::Test
|
|
151
196
|
|
152
197
|
def test_asm_groups_post
|
153
198
|
data = JSON.parse('{
|
154
|
-
"description": "
|
155
|
-
"is_default":
|
156
|
-
"name": "
|
199
|
+
"description": "Suggestions for products our users might like.",
|
200
|
+
"is_default": true,
|
201
|
+
"name": "Product Suggestions"
|
157
202
|
}')
|
158
|
-
headers = JSON.parse('{"X-Mock":
|
203
|
+
headers = JSON.parse('{"X-Mock": 201}')
|
159
204
|
response = @sg.client.asm.groups.post(request_body: data, request_headers: headers)
|
160
|
-
self.assert_equal(response.status_code, "
|
205
|
+
self.assert_equal(response.status_code, "201")
|
161
206
|
end
|
162
207
|
|
163
208
|
def test_asm_groups_get
|
209
|
+
params = JSON.parse('{"id": 1}')
|
164
210
|
headers = JSON.parse('{"X-Mock": 200}')
|
165
|
-
response = @sg.client.asm.groups.get(request_headers: headers)
|
211
|
+
response = @sg.client.asm.groups.get(query_params: params, request_headers: headers)
|
166
212
|
self.assert_equal(response.status_code, "200")
|
167
213
|
end
|
168
214
|
|
@@ -212,6 +258,20 @@ class TestAPI < Minitest::Test
|
|
212
258
|
self.assert_equal(response.status_code, "200")
|
213
259
|
end
|
214
260
|
|
261
|
+
def test_asm_groups__group_id__suppressions_search_post
|
262
|
+
data = JSON.parse('{
|
263
|
+
"recipient_emails": [
|
264
|
+
"exists1@example.com",
|
265
|
+
"exists2@example.com",
|
266
|
+
"doesnotexists@example.com"
|
267
|
+
]
|
268
|
+
}')
|
269
|
+
group_id = "test_url_param"
|
270
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
271
|
+
response = @sg.client.asm.groups._(group_id).suppressions.search.post(request_body: data, request_headers: headers)
|
272
|
+
self.assert_equal(response.status_code, "200")
|
273
|
+
end
|
274
|
+
|
215
275
|
def test_asm_groups__group_id__suppressions__email__delete
|
216
276
|
group_id = "test_url_param"
|
217
277
|
email = "test_url_param"
|
@@ -220,6 +280,12 @@ class TestAPI < Minitest::Test
|
|
220
280
|
self.assert_equal(response.status_code, "204")
|
221
281
|
end
|
222
282
|
|
283
|
+
def test_asm_suppressions_get
|
284
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
285
|
+
response = @sg.client.asm.suppressions.get(request_headers: headers)
|
286
|
+
self.assert_equal(response.status_code, "200")
|
287
|
+
end
|
288
|
+
|
223
289
|
def test_asm_suppressions_global_post
|
224
290
|
data = JSON.parse('{
|
225
291
|
"recipient_emails": [
|
@@ -246,6 +312,13 @@ class TestAPI < Minitest::Test
|
|
246
312
|
self.assert_equal(response.status_code, "204")
|
247
313
|
end
|
248
314
|
|
315
|
+
def test_asm_suppressions__email__get
|
316
|
+
email = "test_url_param"
|
317
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
318
|
+
response = @sg.client.asm.suppressions._(email).get(request_headers: headers)
|
319
|
+
self.assert_equal(response.status_code, "200")
|
320
|
+
end
|
321
|
+
|
249
322
|
def test_browsers_stats_get
|
250
323
|
params = JSON.parse('{"end_date": "2016-04-01", "aggregated_by": "day", "browsers": "test_string", "limit": "test_string", "offset": "test_string", "start_date": "2016-01-01"}')
|
251
324
|
headers = JSON.parse('{"X-Mock": 200}')
|
@@ -280,7 +353,7 @@ class TestAPI < Minitest::Test
|
|
280
353
|
end
|
281
354
|
|
282
355
|
def test_campaigns_get
|
283
|
-
params = JSON.parse('{"limit":
|
356
|
+
params = JSON.parse('{"limit": 1, "offset": 1}')
|
284
357
|
headers = JSON.parse('{"X-Mock": 200}')
|
285
358
|
response = @sg.client.campaigns.get(query_params: params, request_headers: headers)
|
286
359
|
self.assert_equal(response.status_code, "200")
|
@@ -464,7 +537,7 @@ class TestAPI < Minitest::Test
|
|
464
537
|
data = JSON.parse('{
|
465
538
|
"name": "newlistname"
|
466
539
|
}')
|
467
|
-
params = JSON.parse('{"list_id":
|
540
|
+
params = JSON.parse('{"list_id": 1}')
|
468
541
|
list_id = "test_url_param"
|
469
542
|
headers = JSON.parse('{"X-Mock": 200}')
|
470
543
|
response = @sg.client.contactdb.lists._(list_id).patch(request_body: data, query_params: params, request_headers: headers)
|
@@ -472,7 +545,7 @@ class TestAPI < Minitest::Test
|
|
472
545
|
end
|
473
546
|
|
474
547
|
def test_contactdb_lists__list_id__get
|
475
|
-
params = JSON.parse('{"list_id":
|
548
|
+
params = JSON.parse('{"list_id": 1}')
|
476
549
|
list_id = "test_url_param"
|
477
550
|
headers = JSON.parse('{"X-Mock": 200}')
|
478
551
|
response = @sg.client.contactdb.lists._(list_id).get(query_params: params, request_headers: headers)
|
@@ -499,7 +572,7 @@ class TestAPI < Minitest::Test
|
|
499
572
|
end
|
500
573
|
|
501
574
|
def test_contactdb_lists__list_id__recipients_get
|
502
|
-
params = JSON.parse('{"page": 1, "page_size": 1, "list_id":
|
575
|
+
params = JSON.parse('{"page": 1, "page_size": 1, "list_id": 1}')
|
503
576
|
list_id = "test_url_param"
|
504
577
|
headers = JSON.parse('{"X-Mock": 200}')
|
505
578
|
response = @sg.client.contactdb.lists._(list_id).recipients.get(query_params: params, request_headers: headers)
|
@@ -515,7 +588,7 @@ class TestAPI < Minitest::Test
|
|
515
588
|
end
|
516
589
|
|
517
590
|
def test_contactdb_lists__list_id__recipients__recipient_id__delete
|
518
|
-
params = JSON.parse('{"recipient_id":
|
591
|
+
params = JSON.parse('{"recipient_id": 1, "list_id": 1}')
|
519
592
|
list_id = "test_url_param"
|
520
593
|
recipient_id = "test_url_param"
|
521
594
|
headers = JSON.parse('{"X-Mock": 204}')
|
@@ -586,7 +659,7 @@ class TestAPI < Minitest::Test
|
|
586
659
|
end
|
587
660
|
|
588
661
|
def test_contactdb_recipients_search_get
|
589
|
-
params = JSON.parse('{"{field_name}": "test_string"}')
|
662
|
+
params = JSON.parse('{"%7Bfield_name%7D": "test_string", "{field_name}": "test_string"}')
|
590
663
|
headers = JSON.parse('{"X-Mock": 200}')
|
591
664
|
response = @sg.client.contactdb.recipients.search.get(query_params: params, request_headers: headers)
|
592
665
|
self.assert_equal(response.status_code, "200")
|
@@ -676,7 +749,7 @@ class TestAPI < Minitest::Test
|
|
676
749
|
end
|
677
750
|
|
678
751
|
def test_contactdb_segments__segment_id__get
|
679
|
-
params = JSON.parse('{"segment_id":
|
752
|
+
params = JSON.parse('{"segment_id": 1}')
|
680
753
|
segment_id = "test_url_param"
|
681
754
|
headers = JSON.parse('{"X-Mock": 200}')
|
682
755
|
response = @sg.client.contactdb.segments._(segment_id).get(query_params: params, request_headers: headers)
|
@@ -832,7 +905,7 @@ class TestAPI < Minitest::Test
|
|
832
905
|
self.assert_equal(response.status_code, "200")
|
833
906
|
end
|
834
907
|
|
835
|
-
def
|
908
|
+
def test_mail_send_post
|
836
909
|
data = JSON.parse('{
|
837
910
|
"asm": {
|
838
911
|
"group_id": 1,
|
@@ -922,13 +995,8 @@ class TestAPI < Minitest::Test
|
|
922
995
|
"send_at": 1409348513,
|
923
996
|
"subject": "Hello, World!",
|
924
997
|
"substitutions": {
|
925
|
-
"
|
926
|
-
|
927
|
-
"John",
|
928
|
-
"Jane",
|
929
|
-
"Sam"
|
930
|
-
]
|
931
|
-
}
|
998
|
+
"id": "substitutions",
|
999
|
+
"type": "object"
|
932
1000
|
},
|
933
1001
|
"to": [
|
934
1002
|
{
|
@@ -977,7 +1045,7 @@ class TestAPI < Minitest::Test
|
|
977
1045
|
}
|
978
1046
|
}')
|
979
1047
|
headers = JSON.parse('{"X-Mock": 202}')
|
980
|
-
response = @sg.client.mail._("send").
|
1048
|
+
response = @sg.client.mail._("send").post(request_body: data, request_headers: headers)
|
981
1049
|
self.assert_equal(response.status_code, "202")
|
982
1050
|
end
|
983
1051
|
|
@@ -1197,7 +1265,7 @@ class TestAPI < Minitest::Test
|
|
1197
1265
|
end
|
1198
1266
|
|
1199
1267
|
def test_subusers_get
|
1200
|
-
params = JSON.parse('{"username": "test_string", "limit":
|
1268
|
+
params = JSON.parse('{"username": "test_string", "limit": 1, "offset": 1}')
|
1201
1269
|
headers = JSON.parse('{"X-Mock": 200}')
|
1202
1270
|
response = @sg.client.subusers.get(query_params: params, request_headers: headers)
|
1203
1271
|
self.assert_equal(response.status_code, "200")
|
@@ -1295,7 +1363,7 @@ class TestAPI < Minitest::Test
|
|
1295
1363
|
end
|
1296
1364
|
|
1297
1365
|
def test_subusers__subuser_name__stats_monthly_get
|
1298
|
-
params = JSON.parse('{"date": "test_string", "sort_by_direction": "asc", "limit":
|
1366
|
+
params = JSON.parse('{"date": "test_string", "sort_by_direction": "asc", "limit": 1, "sort_by_metric": "test_string", "offset": 1}')
|
1299
1367
|
subuser_name = "test_url_param"
|
1300
1368
|
headers = JSON.parse('{"X-Mock": 200}')
|
1301
1369
|
response = @sg.client.subusers._(subuser_name).stats.monthly.get(query_params: params, request_headers: headers)
|
@@ -1337,7 +1405,7 @@ class TestAPI < Minitest::Test
|
|
1337
1405
|
end
|
1338
1406
|
|
1339
1407
|
def test_suppression_bounces_get
|
1340
|
-
params = JSON.parse('{"start_time":
|
1408
|
+
params = JSON.parse('{"start_time": 1, "end_time": 1}')
|
1341
1409
|
headers = JSON.parse('{"X-Mock": 200}')
|
1342
1410
|
response = @sg.client.suppression.bounces.get(query_params: params, request_headers: headers)
|
1343
1411
|
self.assert_equal(response.status_code, "200")
|
@@ -1777,12 +1845,50 @@ class TestAPI < Minitest::Test
|
|
1777
1845
|
self.assert_equal(response.status_code, "204")
|
1778
1846
|
end
|
1779
1847
|
|
1848
|
+
def test_user_webhooks_parse_settings_post
|
1849
|
+
data = JSON.parse('{
|
1850
|
+
"hostname": "myhostname.com",
|
1851
|
+
"send_raw": false,
|
1852
|
+
"spam_check": true,
|
1853
|
+
"url": "http://email.myhosthame.com"
|
1854
|
+
}')
|
1855
|
+
headers = JSON.parse('{"X-Mock": 201}')
|
1856
|
+
response = @sg.client.user.webhooks.parse.settings.post(request_body: data, request_headers: headers)
|
1857
|
+
self.assert_equal(response.status_code, "201")
|
1858
|
+
end
|
1859
|
+
|
1780
1860
|
def test_user_webhooks_parse_settings_get
|
1781
1861
|
headers = JSON.parse('{"X-Mock": 200}')
|
1782
1862
|
response = @sg.client.user.webhooks.parse.settings.get(request_headers: headers)
|
1783
1863
|
self.assert_equal(response.status_code, "200")
|
1784
1864
|
end
|
1785
1865
|
|
1866
|
+
def test_user_webhooks_parse_settings__hostname__patch
|
1867
|
+
data = JSON.parse('{
|
1868
|
+
"send_raw": true,
|
1869
|
+
"spam_check": false,
|
1870
|
+
"url": "http://newdomain.com/parse"
|
1871
|
+
}')
|
1872
|
+
hostname = "test_url_param"
|
1873
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
1874
|
+
response = @sg.client.user.webhooks.parse.settings._(hostname).patch(request_body: data, request_headers: headers)
|
1875
|
+
self.assert_equal(response.status_code, "200")
|
1876
|
+
end
|
1877
|
+
|
1878
|
+
def test_user_webhooks_parse_settings__hostname__get
|
1879
|
+
hostname = "test_url_param"
|
1880
|
+
headers = JSON.parse('{"X-Mock": 200}')
|
1881
|
+
response = @sg.client.user.webhooks.parse.settings._(hostname).get(request_headers: headers)
|
1882
|
+
self.assert_equal(response.status_code, "200")
|
1883
|
+
end
|
1884
|
+
|
1885
|
+
def test_user_webhooks_parse_settings__hostname__delete
|
1886
|
+
hostname = "test_url_param"
|
1887
|
+
headers = JSON.parse('{"X-Mock": 204}')
|
1888
|
+
response = @sg.client.user.webhooks.parse.settings._(hostname).delete(request_headers: headers)
|
1889
|
+
self.assert_equal(response.status_code, "204")
|
1890
|
+
end
|
1891
|
+
|
1786
1892
|
def test_user_webhooks_parse_stats_get
|
1787
1893
|
params = JSON.parse('{"aggregated_by": "day", "limit": "test_string", "start_date": "2016-01-01", "end_date": "2016-04-01", "offset": "test_string"}')
|
1788
1894
|
headers = JSON.parse('{"X-Mock": 200}')
|