Skip to content
Start here

Suppressions

List account Email Sending suppressions
email_sending.suppressions.list(SuppressionListParams**kwargs) -> SyncCursorPagination[SuppressionListResponse]
GET/accounts/{account_id}/email/sending/suppressions
Get account Email Sending suppression
email_sending.suppressions.get(strsuppression_id, SuppressionGetParams**kwargs) -> SuppressionGetResponse
GET/accounts/{account_id}/email/sending/suppressions/{suppression_id}
Create account Email Sending suppression
email_sending.suppressions.create(SuppressionCreateParams**kwargs) -> SuppressionCreateResponse
POST/accounts/{account_id}/email/sending/suppressions
Update account Email Sending suppression
email_sending.suppressions.edit(strsuppression_id, SuppressionEditParams**kwargs) -> SuppressionEditResponse
PATCH/accounts/{account_id}/email/sending/suppressions/{suppression_id}
Delete account Email Sending suppression
email_sending.suppressions.delete(strsuppression_id, SuppressionDeleteParams**kwargs) -> SuppressionDeleteResponse
DELETE/accounts/{account_id}/email/sending/suppressions/{suppression_id}
Bulk import account Email Sending suppressions
email_sending.suppressions.import_(SuppressionImportParams**kwargs) -> SuppressionImportResponse
POST/accounts/{account_id}/email/sending/suppressions/bulk
ModelsExpand Collapse
class SuppressionListResponse: …
id: str

Unique identifier for this suppression.

formatuuid
created_at: datetime

When the suppression was created.

formatdate-time
email: str

The suppressed email address.

formatemail
expires_at: Optional[datetime]

When the suppression expires. Null for a permanent suppression.

formatdate-time
read_only: bool

Whether clients may mutate this suppression. This is determined by the server and must not be inferred from reason.

reason: str

Why the address is suppressed: manual, complaint, hard_bounce, soft_bounce, or policy.

note: Optional[str]

Advisory note for this suppression, if any.

scope: Optional[Scope]

Where the suppression applies: account for every sending domain of the account, or sending_domain for one envelope MAIL FROM domain.

One of the following:
class ScopeType: …
type: Literal["account"]

Blocks the recipient for every sending domain of the account.

class ScopeUnionMember1: …
type: Literal["sending_domain"]

Blocks the recipient only for mail whose envelope MAIL FROM uses value.

value: str

The sending domain: the domain part of the envelope MAIL FROM, lowercase, without a trailing dot.

maxLength1024
class SuppressionGetResponse: …
id: str

Unique identifier for this suppression.

formatuuid
created_at: datetime

When the suppression was created.

formatdate-time
email: str

The suppressed email address.

formatemail
expires_at: Optional[datetime]

When the suppression expires. Null for a permanent suppression.

formatdate-time
read_only: bool

Whether clients may mutate this suppression. This is determined by the server and must not be inferred from reason.

reason: str

Why the address is suppressed: manual, complaint, hard_bounce, soft_bounce, or policy.

note: Optional[str]

Advisory note for this suppression, if any.

scope: Optional[Scope]

Where the suppression applies: account for every sending domain of the account, or sending_domain for one envelope MAIL FROM domain.

One of the following:
class ScopeType: …
type: Literal["account"]

Blocks the recipient for every sending domain of the account.

class ScopeUnionMember1: …
type: Literal["sending_domain"]

Blocks the recipient only for mail whose envelope MAIL FROM uses value.

value: str

The sending domain: the domain part of the envelope MAIL FROM, lowercase, without a trailing dot.

maxLength1024
class SuppressionCreateResponse: …
id: str

The suppression’s identifier.

formatuuid
scope: Optional[Scope]

Where the suppression applies: account for every sending domain of the account, or sending_domain for one envelope MAIL FROM domain.

One of the following:
class ScopeType: …
type: Literal["account"]

Blocks the recipient for every sending domain of the account.

class ScopeUnionMember1: …
type: Literal["sending_domain"]

Blocks the recipient only for mail whose envelope MAIL FROM uses value.

value: str

The sending domain: the domain part of the envelope MAIL FROM, lowercase, without a trailing dot.

maxLength1024
class SuppressionEditResponse: …
id: str

Unique identifier for this suppression.

formatuuid
created_at: datetime

When the suppression was created.

formatdate-time
email: str

The suppressed email address.

formatemail
expires_at: Optional[datetime]

When the suppression expires. Null for a permanent suppression.

formatdate-time
read_only: bool

Whether clients may mutate this suppression. This is determined by the server and must not be inferred from reason.

reason: str

Why the address is suppressed: manual, complaint, hard_bounce, soft_bounce, or policy.

note: Optional[str]

Advisory note for this suppression, if any.

scope: Optional[Scope]

Where the suppression applies: account for every sending domain of the account, or sending_domain for one envelope MAIL FROM domain.

One of the following:
class ScopeType: …
type: Literal["account"]

Blocks the recipient for every sending domain of the account.

class ScopeUnionMember1: …
type: Literal["sending_domain"]

Blocks the recipient only for mail whose envelope MAIL FROM uses value.

value: str

The sending domain: the domain part of the envelope MAIL FROM, lowercase, without a trailing dot.

maxLength1024
class SuppressionDeleteResponse: …
id: str

The suppression’s identifier.

formatuuid
scope: Optional[Scope]

Where the suppression applies: account for every sending domain of the account, or sending_domain for one envelope MAIL FROM domain.

One of the following:
class ScopeType: …
type: Literal["account"]

Blocks the recipient for every sending domain of the account.

class ScopeUnionMember1: …
type: Literal["sending_domain"]

Blocks the recipient only for mail whose envelope MAIL FROM uses value.

value: str

The sending domain: the domain part of the envelope MAIL FROM, lowercase, without a trailing dot.

maxLength1024
class SuppressionImportResponse: …
deduplicated: int

Number of items dropped because their email address and scope repeated an earlier item in this request. Counted once and excluded from items.

errors: int

Number of items that failed to import due to an unexpected error.

invalid: int

Number of items with an invalid email address or sending domain.

items: List[Item]

Per-item results, in the same order as the request body.

index: int

Zero-based index of this item in the request body.

status: Literal["processed", "invalid", "error", "skipped"]

Outcome for this item.

One of the following:
"processed"
"invalid"
"error"
"skipped"
id: Optional[str]

The created or promoted suppression’s identifier. Present when status is processed.

formatuuid
email: Optional[str]

The submitted email address for this item.

formatemail
error: Optional[str]

Human-readable error message. Present when status is invalid, error, or skipped.

scope: Optional[ItemScope]

Where the suppression applies: account for every sending domain of the account, or sending_domain for one envelope MAIL FROM domain.

One of the following:
class ItemScopeType: …
type: Literal["account"]

Blocks the recipient for every sending domain of the account.

class ItemScopeUnionMember1: …
type: Literal["sending_domain"]

Blocks the recipient only for mail whose envelope MAIL FROM uses value.

value: str

The sending domain: the domain part of the envelope MAIL FROM, lowercase, without a trailing dot.

maxLength1024
processed: int

Number of items successfully created or promoted.

skipped: int

Number of items skipped because the existing suppression is not customer-managed (for example, a read-only policy suppression).

total: int

Total number of items in the request body, including duplicates.