Weekly
Get a weekly list of bounced and complaining addresses
Each week you get a CSV of addresses SendGrid added to its bounce and spam lists, ready to clean from your other tools.
- Runs
- Weekly
- Apps
- SendGrid
- AI
- Not needed
- Access
- Suppressions read
Send this to your assistant
Create a ClickRuntime automation: every Monday at 9am, email me a CSV of addresses added to SendGrid's bounce and spam report lists in the past week.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
SendGrid quietly keeps lists of addresses it will no longer send to: hard bounces, spam complaints, invalid addresses and unsubscribes. These suppressions protect your reputation, but they also hide real business problems. A customer who typed their email wrong at checkout never receives their receipt, a lead who complained once is silently excluded from every future message, and a sales rep keeps emailing someone who is already suppressed. Nobody sees the list unless they go looking in settings.
Each week the automation fetches suppressions added since the previous week, using the start_time parameter, builds a CSV of the addresses with the reason and date, and emails it to you. You can then follow up where it matters and fix the sources of bad data. It suits email marketers, customer support leads and operations teams who care about reaching customers.
What you get out of it
Customers with typos get helped
A bounced address on a recent order is a customer who did not get a confirmation. Support can contact them another way and correct the record, which avoids a chargeback or a complaint.
Complaints are reviewed, not buried
Each spam complaint is a recipient telling you something. A weekly list lets someone read the pattern, such as one campaign drawing most of the complaints, and change what is being sent.
Source forms can be fixed
If many bounces come from one signup form, adding email validation there stops the problem at the door. The report supplies the evidence needed to prioritize that fix. If most bounces come from the checkout form, a single validation rule there stops them at the door.
CRM and SendGrid stay in agreement
Sales systems often still show suppressed addresses as active contacts. The weekly CSV lets you mark them in the CRM so reps stop wasting effort on mail that will never be delivered.
Reputation maintenance as routine
A short weekly review is the kind of regular care that keeps bounce rates low. It takes minutes and avoids the emergency cleanup that follows a deliverability drop. Fifteen minutes weekly keeps the bounce rate low enough that no emergency cleanup is ever needed.
How it works
What happens, step by step
Once a week ClickRuntime collects the addresses SendGrid added to its bounce and spam complaint lists in the last seven days.
For each address it notes which list it is on, the reason and the date it was added.
Everything is laid out as CSV text, one address per line.
The list is emailed to you, ready to paste into a spreadsheet or remove from your CRM and other tools.
Before it runs live
- Connect SendGrid
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other SendGrid steps into one automation
Under the hood
The code that runs this automation
import time
from clickruntime import on_trigger, credentials, http, notify
@on_trigger
def run(event):
key = credentials.secret("SENDGRID_API_KEY")
since = int(time.time()) - 7 * 86400
rows = ["list,email,reason,created"]
for kind in ("bounces", "spam_reports"):
resp = http.get(f"https://api.sendgrid.com/v3/suppression/{kind}",
params={"start_time": since},
headers={"Authorization": f"Bearer {key}"})
resp.raise_for_status()
for s in resp.json():
reason = (s.get("reason") or "").replace(",", ";")
rows.append(f"{kind},{s['email']},{reason},{time.strftime('%Y-%m-%d', time.gmtime(s['created']))}")
notify.email_me("SendGrid suppressions this week", "\n".join(rows))
return {"added": len(rows) - 1}FAQ
Common questions
Which kinds of suppression are included?
Does the report remove addresses from the suppression list?
How far back does each report look?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Get yesterday's SendGrid delivery numbers each morning
You see delivered, bounced and spam counts every day, with a warning when the bounce rate climbs.
See how it worksEmail a daily report to a list through SendGrid
A summary of the numbers or news you track goes out from your own domain at the same time each day.
See how it worksAdd new sign-ups to a SendGrid list
Everyone who fills in your sign-up form ends up in your SendGrid contacts and newsletter list.
See how it worksKeep exploring
Set up “Get a weekly list of bounced and complaining addresses” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.