suppress-global-unsubscribes

Installation
SKILL.md

Suppress Globally Unsubscribed Contacts

Purpose

Contacts who have globally unsubscribed cannot legally be sent marketing emails under CAN-SPAM, GDPR, or CASL. Despite this, they may still be classified as "marketing contacts" in HubSpot, meaning the organization is paying for contacts it cannot and must not email. This skill identifies all globally unsubscribed contacts, analyzes their lifecycle distribution, and guides suppression.

Prerequisites

  • A HubSpot private app access token with crm.objects.contacts.read and crm.lists.read/crm.lists.write scopes
  • Python 3.10+ with uv for package management
  • A .env file containing HUBSPOT_ACCESS_TOKEN
  • Super Admin or Marketing Hub Admin permissions for the manual UI suppression step

Scripts

Stage Script Run with
Before scripts/before.py uv run skills/suppress-global-unsubscribes/scripts/before.py
After scripts/after.py uv run skills/suppress-global-unsubscribes/scripts/after.py
Installs
21
GitHub Stars
56
First Seen
Apr 9, 2026
suppress-global-unsubscribes — tomgranot/hubspot-admin-skills