Skip to content

MailerImportSuppressions

POST mailer/suppression/import

Imports up to 50 000 addresses in one request. This is the method to use when moving from another email provider: their suppression list has to come along, or the first campaign from the new provider will re-bounce every dead address at once and burn the domain reputation on day one.

A malformed address does not abort the import — it lands in failed with its reason while the rest is applied.

Access Control

Allowed role: admin.

Request

POST https://{broker_domain}/mailer/suppression/import
{
  "emails": [
    "[email protected]",
    "[email protected]"
  ],
  "reason": "HARD_BOUNCE",
  "description": "Imported from previous provider"
}
{
  "command": "MailerImportSuppressions",
  "extID": "1",
  "data": {
    "emails": [
      "[email protected]",
      "[email protected]"
    ],
    "reason": "HARD_BOUNCE",
    "description": "Imported from previous provider"
  }
}
const res = await platform.MailerImportSuppressions({
  emails: [
    "[email protected]",
    "[email protected]"
  ],
  reason: "HARD_BOUNCE",
  description: "Imported from previous provider"
});

Request Data

Field Type Required Description
emails array Yes Addresses, 1..50000 items
reason enum No Why they are suppressed: HARD_BOUNCE, BLOCK, COMPLAINT, UNSUBSCRIBE, MANUAL. Default HARD_BOUNCE
description string No Free-form explanation applied to every entry
expiresAt string No YYYY-MM-DD HH:mm:ss. Empty means never expires

Response Data

{
  "created": 2,
  "updated": 0,
  "failed": [
    { "email": "not-an-address", "error": "Address 'not-an-address' cannot be parsed" }
  ]
}

Errors

Code Error Description
400 VALIDATION_ERROR Empty list, or more than 50 000 addresses