Обзор

Интеграции

Руководство пользователя

Справочник API

Вебхуки

API Стоп-списков

Этот раздел API позволяет вам управлять (просматривать, создавать и удалять) стоп-списками в вашем канале. Если адрес находится в стоп-списке, это означает, что отправка писем на него временно приостановлена. Удаление исключения, созданного из-за жесткого возврата (HardBounce), равносильно повторной активации этого email-адреса.

Дамп стоп-списка #

get

/message-streams/{stream_id}/suppressions/dump

Заголовки запроса

Accept обязательный

application/json

X-Haskimail-Server-Token обязательный

Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API».

Пример запроса с curl

curl "https://api.haskimail.ru/message-streams/{stream_id}/suppressions/dump?origin=recipient&fromdate=2019-12-01" \
  -X GET \
  -H "Accept: application/json" \
  -H "X-Haskimail-Server-Token: server token"

Параметры запроса

SuppressionReason

Фильтр по причине исключения. Возможные значения:HardBounce, SpamComplaint, ManualSuppression.

Origin

Фильтр по источнику добавления адреса в список исключений. Возможные значения: Recipient, Customer, Admin.

todate

Фильтровать исключения по указанную дату (включительно). Например: 2020-02-01.

fromdate

Фильтровать исключения, начиная с указанной даты (включительно). Например: 2020-02-01.

EmailAddress

Фильтр по email-адресу.

Ответ

Suppressions array​

Список объектов, каждый из которых представляет одно исключение.

Пример ответа

HTTP/1.1 200 OK
Content-Type: application/json

{  
  "Suppressions":[
    {  
      "EmailAddress":"address@wildbit.com",
      "SuppressionReason":"ManualSuppression",
      "Origin": "Recipient",
      "CreatedAt":"2019-12-17T08:58:33-05:00"
    },
    {  
      "EmailAddress":"bounce.address@wildbit.com",
      "SuppressionReason":"HardBounce",
      "Origin": "Recipient",
      "CreatedAt":"2019-12-17T08:58:33-05:00"
    },
    {  
      "EmailAddress":"spam.complaint.address@wildbit.com",
      "SuppressionReason":"SpamComplaint",
      "Origin": "Recipient",
      "CreatedAt":"2019-12-17T08:58:33-05:00"
    }
  ]
}

Добавить в стоп-лист #

post

/message-streams/{stream_id}/suppressions

Заголовки запроса

Accept обязательный

application/json

Content-Type обязательный

application/json

X-Haskimail-Server-Token обязательный

Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API».

Пример запроса с curl

curl "https://api.haskimail.ru/message-streams/{stream_id}/suppressions" \
  -X POST \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Haskimail-Server-Token: server token"\
  -d '{
  "Suppressions": [{
      "EmailAddress": "good.address@wildbit.com"
    },
    {
      "EmailAddress": "spammy.address@wildbit.com"
    },
    {
      "EmailAddress": "invalid-email-address"
    }
  ]
}'

Формат тела запроса

Suppressions array​ обязательный

Массив, содержащий email-адреса, для которых нужно создать исключения. Максимум 50 исключений могут быть созданы за один вызов.

EmailAddress string

Email-адрес, для которого запрашивается создание исключения.

Пример формата тела запроса

{  
  "Suppressions":[
    {  
      "EmailAddress":"good.address@wildbit.com"
    },
    {  
      "EmailAddress":"spammy.address@wildbit.com"
    },
    {  
      "EmailAddress":"invalid-email-address"
    }
  ]  
}

Ответ

Suppressions array​

Список, представляющий исключения, для которых был запрошен процесс создания.

EmailAddress string

Email-адрес, для которого было запрошено создание исключения.

Status string

Статус запроса на создание исключения. Возможные значения: Failed, Suppressed.

Message string

Если адрес не может быть исключен (статус Failed), будет указана причина сбоя. Если исключение создано (статус Suppressed), сообщение будет null.

Пример ответа

HTTP/1.1 200 OK
Content-Type: application/json

{  
  "Suppressions":[
    {  
      "EmailAddress":"good.address@wildbit.com",
      "Status":"Suppressed",
      "Message": null
    },
    {  
      "EmailAddress":"spammy.address@wildbit.com",
      "Status":"Failed",
      "Message": "You do not have the обязательный authority to change this suppression."
    },
    {  
      "EmailAddress":"invalid-email-address",
      "Status":"Failed",
      "Message": "An invalid email address was provided."
    }
  ]  
}

Удаление исключений #

post

/message-streams/{stream_id}/suppressions/delete

Исключения, созданные по причине жалоб на спам (SpamComplaint), не могут быть удалены.  

Заголовки запроса

Accept обязательный

application/json

Content-Type обязательный

application/json

X-Haskimail-Server-Token обязательный

Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API».

Пример запроса с curl

curl "https://api.haskimail.ru/message-streams/{stream_id}/suppressions/delete" \
  -X POST \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Haskimail-Server-Token: server token" \
  -d '{
  "Suppressions": [
    {
      "EmailAddress": "bounced.address@wildbit.com"
    },
    {
      "EmailAddress": "not.suppressed@wildbit.com"
    },
    {
      "EmailAddress": "spammy.address@wildbit.com"
    }
  ]
}'

Формат тела запроса

Suppressions array​ обязательный

Массив email-адресов, для которых нужно удалить исключения. Максимум 50 исключений могут быть удалены за один вызов.

EmailAddress string

Email-адрес, для которого запрашивается удаление исключения.

Пример формата тела запроса

{  
  "Suppressions":[  
    {  
      "EmailAddress":"good.address@wildbit.com"
    },
    {  
      "EmailAddress":"not.suppressed@wildbit.com"
    },
    {  
      "EmailAddress":"spammy.address@wildbit.com"
    }
  ]
}

Ответ

Suppressions array​

Список, представляющий исключения, для которых был запрошен процесс удаления.

EmailAddress string

Email-адрес, для которого было запрошено удаление исключения.

Status string

Статус запроса на удаление исключения. Возможные значения: Failed, Deleted.

Message string

Если адрес не может быть удален (статус Failed), будет указана причина сбоя. Если удаление исключения прошло успешно (статус Deleted), сообщение будет null.

Пример ответа

HTTP/1.1 200 OK
Content-Type: application/json

{  
  "Suppressions":[
    {  
      "EmailAddress":"good.address@wildbit.com",
      "Status":"Deleted",
      "Message": null
    },
    {  
      "EmailAddress":"not.suppressed@wildbit.com",
      "Status":"Deleted",
      "Message": null
    },
    {  
      "EmailAddress":"spammy.address@wildbit.com",
      "Status":"Failed",
      "Message": "You do not have the обязательный authority to change this suppression."
    }
  ]  
}