List check

Answers whether the org's send gate refuses an address, and which list holds it, by the same check every commercial send asks.

GET /v1/marketing/suppressions/check

Addresshttps://api.hanzo.ai/v1/marketing/suppressions/check
MethodGET
Operationget_marketing_suppressions_check
AuthAuthorization: Bearer $HANZO_API_KEY

Answers whether the org's send gate refuses an address, and which list holds it, by the same check every commercial send asks.

Request

2 fields.

FieldInTypeRequiredDescription
channelquerystring—Channel is the surface the entry opts out of; empty is email.
addressquerystring—Address is the entry: an address, or "@example.com" for a company.

Response

StatusBodyMeaning
200marketing.SuppressionCheckok
defaultproblem-detailsrefused

200 body — 3 fields.

FieldInTypeAlwaysDescription
reasonbodystring—Reason is what the matching entry was recorded with: "one-click unsubscribe", a bounce, a complaint, an admin's note.
scopebodystring—Scope is the list that matched: address (the org's, for the address), domain (the org's, for the address's company) or platform (the blocklist, which every org's gate reads).
suppressedbodyboolean—Suppressed is true when the send gate refuses the address on the channel.

Failure carries the platform error shape — see Errors.

Examples

hanzo marketing suppressions check
import { Configuration, MarketingApi } from 'hanzoai';

const api = new MarketingApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getMarketingSuppressionsCheck();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import MarketingApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = MarketingApi(client).get_marketing_suppressions_check()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.MarketingAPI.GetMarketingSuppressionsCheck(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, marketing_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = marketing_api::get_marketing_suppressions_check(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.MarketingApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new MarketingApi(client).getMarketingSuppressionsCheck();
curl https://api.hanzo.ai/v1/marketing/suppressions/check \
  -H "Authorization: Bearer $HANZO_API_KEY"

MCP reaches marketing through the marketing tool, which names its 82 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_marketing_audiences"
         }
       }
     }'

Marketing API · All Hanzo APIs · Interactive reference

Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.