Skip to content

Commit b7d6353

Browse files
Merge pull request #138 from sendgrid/asm_global_suppresssions_delete
Added ability to delete an email from the global suppression list
2 parents 1581ddc + 1aa1db5 commit b7d6353

File tree

4 files changed

+23
-2
lines changed

4 files changed

+23
-2
lines changed

README.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,13 @@ Add an email to the global suppression list.
324324
client = sendgrid.SendGridAPIClient(os.environ.get('SENDGRID_API_KEY'))
325325
email = ['[email protected]']
326326
status, msg = client.asm_global_suppressions.post(email)
327+
328+
Delete an email from the global suppression list.
329+
330+
.. code:: python
331+
client = sendgrid.SendGridAPIClient(os.environ.get('SENDGRID_API_KEY'))
332+
333+
status, msg = client.asm_global_suppressions.delete(email)
327334
328335
Suppression Unsubscribes
329336
~~~~~~~~~~~~~~~~~~~~~~~~

example_v3_test.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@
1010

1111
client = sendgrid.SendGridAPIClient(os.environ.get('SENDGRID_API_KEY'))
1212

13+
14+
status, msg = client.asm_global_suppressions.delete(email)
15+
print status
16+
print msg
17+
1318
"""
1419
1520
status, msg = client.suppressions.get()

sendgrid/resources/asm_global_suppressions.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,9 @@ def get(self, email=None):
4343
def post(self, emails=None):
4444
data = {}
4545
data["recipient_emails"] = emails
46-
return self.client.post(self, data)
46+
return self.client.post(self, data)
47+
48+
# Remove an email from the global suppressions group
49+
def delete(self, email=None):
50+
self._endpoint = self._base_endpoint + '/' + email
51+
return self.client.delete(self)

test/test_asm_global_suppressions.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def test_asm_global_suppressions_get(self):
3030
status, msg = self.client.asm_global_suppressions.get('[email protected]')
3131
self.assertEqual(status, 200)
3232

33-
def test_asm_suppressions_post(self):
33+
def test_asm_global_suppressions_post(self):
3434
emails = ['[email protected]']
3535
status, msg = self.client.asm_global_suppressions.post(emails)
3636
self.assertEqual(status, 201)
@@ -39,6 +39,10 @@ def test_asm_suppressions_post(self):
3939
status, msg = self.client.asm_global_suppressions.post(emails)
4040
self.assertEqual(status, 201)
4141
self.assertEqual(msg['recipient_emails'], emails)
42+
43+
def test_asm_global_suppressions_delete(self):
44+
status, msg = self.client.asm_global_suppressions.delete('[email protected]')
45+
self.assertEqual(status, 204)
4246

4347
if __name__ == '__main__':
4448
unittest.main()

0 commit comments

Comments
 (0)