Skip to content

Commit 76b298a

Browse files
Example Code
1 parent 292ef99 commit 76b298a

File tree

25 files changed

+2130
-189
lines changed

25 files changed

+2130
-189
lines changed

examples/apikey/apikey.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import sendgrid
2+
import os
3+
sendgrid_api_key = os.environ.get('SENDGRID_API_KEY')
4+
host = os.environ.get('HOST') # e.g. https://api.sendgrid.com
5+
request_headers = {
6+
"Authorization": 'Bearer {0}'.format(sendgrid_api_key),
7+
"Content-Type": "application/json"
8+
}
9+
sg = sendgrid.SendGridAPIClient(host=host, request_headers=request_headers)
10+
11+
##################################################
12+
# Create API keys #
13+
# POST /api_key #
14+
15+
data = {'sample': 'data'}
16+
response = self.sg.client.api_key.post(request_body=data)
17+
print(response.status_code)
18+
print(response.response_body)
19+
print(response.response_headers)
20+

examples/apikeys/apikeys.py

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
import sendgrid
2+
import os
3+
sendgrid_api_key = os.environ.get('SENDGRID_API_KEY')
4+
host = os.environ.get('HOST') # e.g. https://api.sendgrid.com
5+
request_headers = {
6+
"Authorization": 'Bearer {0}'.format(sendgrid_api_key),
7+
"Content-Type": "application/json"
8+
}
9+
sg = sendgrid.SendGridAPIClient(host=host, request_headers=request_headers)
10+
11+
##################################################
12+
# List all API Keys belonging to the authenticated user #
13+
# GET /api_keys #
14+
15+
response = self.sg.client.api_keys.get()
16+
print(response.status_code)
17+
print(response.response_body)
18+
print(response.response_headers)
19+
20+
##################################################
21+
# Update the name & scopes of an API Key #
22+
# PUT /api_keys/{api_key_id} #
23+
24+
data = {'sample': 'data'}
25+
api_key_id = "test_url_param"
26+
response = self.sg.client.api_keys._(api_key_id).put(request_body=data)
27+
print(response.status_code)
28+
print(response.response_body)
29+
print(response.response_headers)
30+
31+
##################################################
32+
# Update API keys #
33+
# PATCH /api_keys/{api_key_id} #
34+
35+
data = {'sample': 'data'}
36+
api_key_id = "test_url_param"
37+
response = self.sg.client.api_keys._(api_key_id).patch(request_body=data)
38+
print(response.status_code)
39+
print(response.response_body)
40+
print(response.response_headers)
41+
42+
##################################################
43+
# Get an existing API Key #
44+
# GET /api_keys/{api_key_id} #
45+
46+
api_key_id = "test_url_param"
47+
response = self.sg.client.api_keys._(api_key_id).get()
48+
print(response.status_code)
49+
print(response.response_body)
50+
print(response.response_headers)
51+
52+
##################################################
53+
# Delete API keys #
54+
# DELETE /api_keys/{api_key_id} #
55+
56+
api_key_id = "test_url_param"
57+
response = self.sg.client.api_keys._(api_key_id).delete()
58+
print(response.status_code)
59+
print(response.response_body)
60+
print(response.response_headers)
61+

examples/asm/asm.py

Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
import sendgrid
2+
import os
3+
sendgrid_api_key = os.environ.get('SENDGRID_API_KEY')
4+
host = os.environ.get('HOST') # e.g. https://api.sendgrid.com
5+
request_headers = {
6+
"Authorization": 'Bearer {0}'.format(sendgrid_api_key),
7+
"Content-Type": "application/json"
8+
}
9+
sg = sendgrid.SendGridAPIClient(host=host, request_headers=request_headers)
10+
11+
##################################################
12+
# Create a Group #
13+
# POST /asm/groups #
14+
15+
data = {'sample': 'data'}
16+
response = self.sg.client.asm.groups.post(request_body=data)
17+
print(response.status_code)
18+
print(response.response_body)
19+
print(response.response_headers)
20+
21+
##################################################
22+
# Retrieve all suppression groups associated with the user. #
23+
# GET /asm/groups #
24+
25+
response = self.sg.client.asm.groups.get()
26+
print(response.status_code)
27+
print(response.response_body)
28+
print(response.response_headers)
29+
30+
##################################################
31+
# Update a suppression group. #
32+
# PATCH /asm/groups/{group_id} #
33+
34+
data = {'sample': 'data'}
35+
group_id = "test_url_param"
36+
response = self.sg.client.asm.groups._(group_id).patch(request_body=data)
37+
print(response.status_code)
38+
print(response.response_body)
39+
print(response.response_headers)
40+
41+
##################################################
42+
# Get information on a single suppression group. #
43+
# GET /asm/groups/{group_id} #
44+
45+
group_id = "test_url_param"
46+
response = self.sg.client.asm.groups._(group_id).get()
47+
print(response.status_code)
48+
print(response.response_body)
49+
print(response.response_headers)
50+
51+
##################################################
52+
# Delete a suppression group. #
53+
# DELETE /asm/groups/{group_id} #
54+
55+
group_id = "test_url_param"
56+
response = self.sg.client.asm.groups._(group_id).delete()
57+
print(response.status_code)
58+
print(response.response_body)
59+
print(response.response_headers)
60+
61+
##################################################
62+
# Add suppressions to a suppression group #
63+
# POST /asm/groups/{group_id}/suppressions #
64+
65+
data = {'sample': 'data'}
66+
group_id = "test_url_param"
67+
response = self.sg.client.asm.groups._(group_id).suppressions.post(request_body=data)
68+
print(response.status_code)
69+
print(response.response_body)
70+
print(response.response_headers)
71+
72+
##################################################
73+
# Retrieve all suppressions for a suppression group #
74+
# GET /asm/groups/{group_id}/suppressions #
75+
76+
group_id = "test_url_param"
77+
response = self.sg.client.asm.groups._(group_id).suppressions.get()
78+
print(response.status_code)
79+
print(response.response_body)
80+
print(response.response_headers)
81+
82+
##################################################
83+
# Delete a suppression from a suppression group #
84+
# DELETE /asm/groups/{group_id}/suppressions/{email} #
85+
86+
group_id = "test_url_param"
87+
email = "test_url_param"
88+
response = self.sg.client.asm.groups._(group_id).suppressions._(email).delete()
89+
print(response.status_code)
90+
print(response.response_body)
91+
print(response.response_headers)
92+
93+
##################################################
94+
# Add recipient addresses to the global suppression group. #
95+
# POST /asm/suppressions/global #
96+
97+
data = {'sample': 'data'}
98+
response = self.sg.client.asm.suppressions._("global").post(request_body=data)
99+
print(response.status_code)
100+
print(response.response_body)
101+
print(response.response_headers)
102+
103+
##################################################
104+
# Check if a recipient address is in the global suppressions group. #
105+
# GET /asm/suppressions/global/{email_address} #
106+
107+
email_address = "test_url_param"
108+
response = self.sg.client.asm.suppressions._("global")._(email_address).get()
109+
print(response.status_code)
110+
print(response.response_body)
111+
print(response.response_headers)
112+
113+
##################################################
114+
# Retrieve a Global Suppression #
115+
# GET /asm/suppressions/global/{email} #
116+
117+
email = "test_url_param"
118+
response = self.sg.client.asm.suppressions._("global")._(email).get()
119+
print(response.status_code)
120+
print(response.response_body)
121+
print(response.response_headers)
122+
123+
##################################################
124+
# Delete a Global Suppression #
125+
# DELETE /asm/suppressions/global/{email} #
126+
127+
email = "test_url_param"
128+
response = self.sg.client.asm.suppressions._("global")._(email).delete()
129+
print(response.status_code)
130+
print(response.response_body)
131+
print(response.response_headers)
132+

examples/browsers/browsers.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import sendgrid
2+
import os
3+
sendgrid_api_key = os.environ.get('SENDGRID_API_KEY')
4+
host = os.environ.get('HOST') # e.g. https://api.sendgrid.com
5+
request_headers = {
6+
"Authorization": 'Bearer {0}'.format(sendgrid_api_key),
7+
"Content-Type": "application/json"
8+
}
9+
sg = sendgrid.SendGridAPIClient(host=host, request_headers=request_headers)
10+
11+
##################################################
12+
# Retrieve email statistics by browser. #
13+
# GET /browsers/stats #
14+
15+
params = {'end_date': 'test_string', 'aggregated_by': 'test_string', 'browsers': 'test_string', 'limit': 'test_string', 'offset': 'test_string', 'start_date': 'test_string'}
16+
response = self.sg.client.browsers.stats.get(query_params=params)
17+
print(response.status_code)
18+
print(response.response_body)
19+
print(response.response_headers)
20+

examples/campaigns/campaigns.py

Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
import sendgrid
2+
import os
3+
sendgrid_api_key = os.environ.get('SENDGRID_API_KEY')
4+
host = os.environ.get('HOST') # e.g. https://api.sendgrid.com
5+
request_headers = {
6+
"Authorization": 'Bearer {0}'.format(sendgrid_api_key),
7+
"Content-Type": "application/json"
8+
}
9+
sg = sendgrid.SendGridAPIClient(host=host, request_headers=request_headers)
10+
11+
##################################################
12+
# Create a Campaign #
13+
# POST /campaigns #
14+
15+
data = {'sample': 'data'}
16+
response = self.sg.client.campaigns.post(request_body=data)
17+
print(response.status_code)
18+
print(response.response_body)
19+
print(response.response_headers)
20+
21+
##################################################
22+
# Get all Campaigns #
23+
# GET /campaigns #
24+
25+
params = {'limit': 0, 'offset': 0}
26+
response = self.sg.client.campaigns.get(query_params=params)
27+
print(response.status_code)
28+
print(response.response_body)
29+
print(response.response_headers)
30+
31+
##################################################
32+
# Update a Campaign #
33+
# PATCH /campaigns/{campaign_id} #
34+
35+
data = {'sample': 'data'}
36+
campaign_id = "test_url_param"
37+
response = self.sg.client.campaigns._(campaign_id).patch(request_body=data)
38+
print(response.status_code)
39+
print(response.response_body)
40+
print(response.response_headers)
41+
42+
##################################################
43+
# Get a single campaign #
44+
# GET /campaigns/{campaign_id} #
45+
46+
campaign_id = "test_url_param"
47+
response = self.sg.client.campaigns._(campaign_id).get()
48+
print(response.status_code)
49+
print(response.response_body)
50+
print(response.response_headers)
51+
52+
##################################################
53+
# Delete a Campaign #
54+
# DELETE /campaigns/{campaign_id} #
55+
56+
campaign_id = "test_url_param"
57+
response = self.sg.client.campaigns._(campaign_id).delete()
58+
print(response.status_code)
59+
print(response.response_body)
60+
print(response.response_headers)
61+
62+
##################################################
63+
# Update a Scheduled Campaign #
64+
# PATCH /campaigns/{campaign_id}/schedules #
65+
66+
data = {'sample': 'data'}
67+
campaign_id = "test_url_param"
68+
response = self.sg.client.campaigns._(campaign_id).schedules.patch(request_body=data)
69+
print(response.status_code)
70+
print(response.response_body)
71+
print(response.response_headers)
72+
73+
##################################################
74+
# Schedule a Campaign #
75+
# POST /campaigns/{campaign_id}/schedules #
76+
77+
data = {'sample': 'data'}
78+
campaign_id = "test_url_param"
79+
response = self.sg.client.campaigns._(campaign_id).schedules.post(request_body=data)
80+
print(response.status_code)
81+
print(response.response_body)
82+
print(response.response_headers)
83+
84+
##################################################
85+
# View Scheduled Time of a Campaign #
86+
# GET /campaigns/{campaign_id}/schedules #
87+
88+
campaign_id = "test_url_param"
89+
response = self.sg.client.campaigns._(campaign_id).schedules.get()
90+
print(response.status_code)
91+
print(response.response_body)
92+
print(response.response_headers)
93+
94+
##################################################
95+
# Unschedule a Scheduled Campaign #
96+
# DELETE /campaigns/{campaign_id}/schedules #
97+
98+
campaign_id = "test_url_param"
99+
response = self.sg.client.campaigns._(campaign_id).schedules.delete()
100+
print(response.status_code)
101+
print(response.response_body)
102+
print(response.response_headers)
103+
104+
##################################################
105+
# Send a Campaign #
106+
# POST /campaigns/{campaign_id}/schedules/now #
107+
108+
data = {'sample': 'data'}
109+
campaign_id = "test_url_param"
110+
response = self.sg.client.campaigns._(campaign_id).schedules.now.post(request_body=data)
111+
print(response.status_code)
112+
print(response.response_body)
113+
print(response.response_headers)
114+
115+
##################################################
116+
# Send a Test Campaign #
117+
# POST /campaigns/{campaign_id}/schedules/test #
118+
119+
data = {'sample': 'data'}
120+
campaign_id = "test_url_param"
121+
response = self.sg.client.campaigns._(campaign_id).schedules.test.post(request_body=data)
122+
print(response.status_code)
123+
print(response.response_body)
124+
print(response.response_headers)
125+

0 commit comments

Comments
 (0)