@@ -18,6 +18,7 @@ private static void Main()
1818 // Test viewing, creating, modifying and deleting API keys through our v3 Web API
1919 ApiKeys ( ) ;
2020 UnsubscribeGroups ( ) ;
21+ Suppressions ( ) ;
2122 }
2223
2324 private static void SendAsync ( SendGrid . SendGridMessage message )
@@ -115,7 +116,7 @@ private static void UnsubscribeGroups()
115116 HttpResponseMessage responseGetUnique = client . UnsubscribeGroups . Get ( unsubscribeGroupID ) . Result ;
116117 Console . WriteLine ( responseGetUnique . StatusCode ) ;
117118 Console . WriteLine ( responseGetUnique . Content . ReadAsStringAsync ( ) . Result ) ;
118- Console . WriteLine ( "These is an Unsubscribe Group with ID: " + unsubscribeGroupID . ToString ( ) + ". Press any key to continue." ) ;
119+ Console . WriteLine ( "This is an Unsubscribe Group with ID: " + unsubscribeGroupID . ToString ( ) + ". Press any key to continue." ) ;
119120 Console . ReadKey ( ) ;
120121
121122 // POST UNSUBSCRIBE GROUP
@@ -138,5 +139,42 @@ private static void UnsubscribeGroups()
138139 Console . WriteLine ( "Unsubscribe Group Deleted, press any key to end" ) ;
139140 Console . ReadKey ( ) ;
140141 }
142+
143+ private static void Suppressions ( )
144+ {
145+ String apiKey = Environment . GetEnvironmentVariable ( "SENDGRID_APIKEY" , EnvironmentVariableTarget . User ) ;
146+ var client = new SendGrid . Client ( apiKey ) ;
147+
148+ // GET SUPPRESSED ADDRESSES FOR A GIVEN GROUP
149+ int groupID = 69 ;
150+ HttpResponseMessage responseGetUnique = client . Suppressions . Get ( groupID ) . Result ;
151+ Console . WriteLine ( responseGetUnique . StatusCode ) ;
152+ Console . WriteLine ( responseGetUnique . Content . ReadAsStringAsync ( ) . Result ) ;
153+ Console . WriteLine ( "These are the suppressed emails with group ID: " + groupID . ToString ( ) + ". Press any key to continue." ) ;
154+ Console . ReadKey ( ) ;
155+
156+ // ADD EMAILS TO A SUPPRESSION GROUP
157+ 158+ HttpResponseMessage responsePost = client . Suppressions . Post ( groupID , emails ) . Result ;
159+ var rawString = responsePost . Content . ReadAsStringAsync ( ) . Result ;
160+ dynamic jsonObject = JObject . Parse ( rawString ) ;
161+ Console . WriteLine ( responsePost . StatusCode ) ;
162+ Console . WriteLine ( responsePost . Content . ReadAsStringAsync ( ) . Result ) ;
163+ Console . WriteLine ( "Emails added to Suppression Group:" + groupID . ToString ( ) + ". Press any key to continue." ) ;
164+ Console . ReadKey ( ) ;
165+
166+ // DELETE EMAILS FROM A SUPPRESSION GROUP
167+ Console . WriteLine ( "Deleting emails from Suppression Group, please wait." ) ;
168+ HttpResponseMessage responseDelete1 = client . Suppressions . Delete ( groupID , "[email protected] " ) . Result ; 169+ Console . WriteLine ( responseDelete1 . StatusCode ) ;
170+ HttpResponseMessage responseDelete2 = client . Suppressions . Delete ( groupID , "[email protected] " ) . Result ; 171+ Console . WriteLine ( responseDelete2 . StatusCode ) ;
172+ HttpResponseMessage responseFinal = client . Suppressions . Get ( groupID ) . Result ;
173+ Console . WriteLine ( responseFinal . StatusCode ) ;
174+ Console . WriteLine ( responseFinal . Content . ReadAsStringAsync ( ) . Result ) ;
175+ Console . WriteLine ( "Emails removed from Suppression Group" + groupID . ToString ( ) + "Deleted. Press any key to end" ) ;
176+ Console . ReadKey ( ) ;
177+ }
178+
141179 }
142180}
0 commit comments