The documentation seems to indicate that if you clear out a ON HOLD (Bounce) state for a contact, then it also removes the suppression record on the Sparkpost side. That works just fine for a single contact while viewing it. However, if you do a search and select multiple contacts and then execute action "Email unhold addresses" the ON HOLD (Bounce) state will clear on the Civi side but the emails remain suppressed on the Sparkpost side, which means on the next mailer the ON HOLD (Bounce) state returns because of SparkPost bounce code 25. I guess that's being somewhat smart to avoid massive suppression removals and damaging your email reputation. However, for us, we have a use case where over 3+ years we have ~140 contacts who have good emails and had evidently unintentionally unsubscribed on the Sparkpost side (sparkpost suppression type "List Unsubscribe" which is different than the CiviMail embedded UNsubscribe link in each mail). You can also not do a bulk removal of suppression recipients on the SparkPost side, only one at a time like in Civi, so you're either in for a couple hours of mouse clicks or asking SparkPost support to do it for you. It would be good if the SparkPost extension also would do the multiple emails suppression removal when multiple contacts are selected on a search via the SparkPost API https://developers.sparkpost.com/api/suppression-list/?no-cache=1#suppression-list-delete-delete-a-suppression . Is the current behavior intended?
The documentation seems to indicate that if you clear out a ON HOLD (Bounce) state for a contact, then it also removes the suppression record on the Sparkpost side. That works just fine for a single contact while viewing it. However, if you do a search and select multiple contacts and then execute action "Email unhold addresses" the ON HOLD (Bounce) state will clear on the Civi side but the emails remain suppressed on the Sparkpost side, which means on the next mailer the ON HOLD (Bounce) state returns because of SparkPost bounce code 25. I guess that's being somewhat smart to avoid massive suppression removals and damaging your email reputation. However, for us, we have a use case where over 3+ years we have ~140 contacts who have good emails and had evidently unintentionally unsubscribed on the Sparkpost side (sparkpost suppression type "List Unsubscribe" which is different than the CiviMail embedded UNsubscribe link in each mail). You can also not do a bulk removal of suppression recipients on the SparkPost side, only one at a time like in Civi, so you're either in for a couple hours of mouse clicks or asking SparkPost support to do it for you. It would be good if the SparkPost extension also would do the multiple emails suppression removal when multiple contacts are selected on a search via the SparkPost API https://developers.sparkpost.com/api/suppression-list/?no-cache=1#suppression-list-delete-delete-a-suppression . Is the current behavior intended?