Resources

    Blacklist management API

    List, add and remove suppression entries by email or domain.

    How the blacklist works

    The blacklist is your account-wide suppression list. Every entry is either a single email address (type: "email") or a whole domain (type: "domain"), and suppressed addresses are excluded from all sending - campaigns, automations and transactional flows alike - regardless of which lists they are on. The platform also adds entries automatically, for example after hard bounces and spam complaints; those show added_by: "automatic".

    Suppression works alongside subscriber statuses: a suppressed contact keeps their subscriber records, but nothing is sent to them while the entry exists. Removing the entry makes the address sendable again, provided the subscriber status also allows it.

    Use cases

    • Keep a shared suppression list in sync between the platform and your CRM or ESP history.
    • Block disposable-email domains or known spam traps before they hurt your reputation.
    • Suppress addresses collected through a data processing request without deleting subscriber history.
    • Audit automatic suppressions (bounces, complaints) from your own monitoring.

    Removing entries is rarely the answer

    Entries that were added automatically usually exist for a reason (a hard bounce or a spam complaint). Only remove an entry if you know the address is valid and the person expects your email; repeatedly emailing bounced or complaining addresses damages deliverability for your whole account.

    Endpoints

    GET

    Get blacklist entries

    /blacklist-api

    Query parameters

    NameTypeDescription
    typestringFilter by type (email, domain).
    searchstringSearch by value.
    limitnumberItems per page (default: 50).
    offsetnumberPagination offset.
    curl -X GET "https://api.mailingplatform.net/blacklist-api?type=email&search=example" \
      -H "Authorization: Bearer mp_live_..."
    POST

    Add to blacklist

    /blacklist-api

    Single entry request body

    NameTypeDescription
    typerequiredstringemail or domain.
    valuerequiredstringEmail address or domain to suppress.
    reasonstringWhy the entry was added.
    added_bystringSource, for example manual.
    curl -X POST "https://api.mailingplatform.net/blacklist-api" \
      -H "Authorization: Bearer mp_live_..." \
      -H "Content-Type: application/json" \
      -d '{
      "type": "email",
      "value": "spam@example.com",
      "reason": "Multiple spam complaints",
      "added_by": "manual"
    }'

    Bulk entries request body

    curl -X POST "https://api.mailingplatform.net/blacklist-api" \
      -H "Authorization: Bearer mp_live_..." \
      -H "Content-Type: application/json" \
      -d '[
      {
        "type": "email",
        "value": "spam1@example.com",
        "reason": "Spam complaint"
      },
      {
        "type": "domain",
        "value": "badsite.com",
        "reason": "High bounce rate"
      }
    ]'
    PUT

    Update blacklist entry

    /blacklist-api/{entryId}

    Update the reason or added_by note on an existing entry. Only the fields you send are changed.

    Request body (partial)

    NameTypeDescription
    reasonstringWhy the address or domain is blocked.
    added_bystringWho or what added the entry.
    curl -X PUT "https://api.mailingplatform.net/blacklist-api/{entryId}" \
      -H "Authorization: Bearer mp_live_..." \
      -H "Content-Type: application/json" \
      -d '{"reason": "Hard bounce confirmed by provider"}'
    DELETE

    Remove from blacklist

    /blacklist-api/{entryId}

    Permanently removes an entry from the blacklist. This action cannot be undone.

    curl -X DELETE "https://api.mailingplatform.net/blacklist-api/{entryId}" \
      -H "Authorization: Bearer mp_live_..."