-
Все поля в api являются обязательными, если не указано обратного.
-
В каждом запросае должно присутствовать поле
secKey, которое должно быть равно полюsecKeyиз настроекprotected/config/params.php -
Все методы в случае ошибки возвращают следующую структуру:
{"status": "error", "message": "error message text"}
-
Внутренняя структура api в некоторой части продиктована текущим строением webmail.
Проверяет наличие пользователя.
userName, string - Имя пользователя в dbmail.
{"status": "ok", "found": true}Где found - Присутствует пользователь или нет, bool.
Создает пользователя. Если имя пользователя содержит символ @, тогда оно используется для имени email. Иначе - присваивает ему ящик вида userName@defaultMailDomain. defaultMailDomain указывается в настройках dbmail-api.
userName, string - Имя пользователя в dbmail и по совместительству, email пользователя.password, string - Пароль пользователя.
{"status": "ok"}Изменяет пароль существующего пользователя.
userName, string - Имя пользователя в dbmail.password, string - Пароль пользователя.
{"status": "ok"}Удаляет существующего пользователя и все его ящики со всей почтой.
userName, string - Имя пользователя в dbmail.
{"status": "ok"}Очищает у существующего пользователя все его ящики со всей почтой.
userName, string - Имя пользователя в dbmail.
{"status": "ok"}Возвращает количество непрочитанных писем у пользователя.
userName, string - Имя пользователя в dbmail.
{"status": "ok", "unreadCount": 0}Создает правила фильтрации входного почтового потока.
-
userName, string - Имя пользователя в dbmail. -
ruleName, string - Название правила. -
rulesJoinOperator, string - Логический оператор, который будет применятся -
disabled, bool(int [ 1 | 0 ]) - Отключить правило. Как правило, используется в связке с пересылкой писем для временного отключения правила до валидации конечного email. -
rules, string, json array - Правила фильтра. Формат:[ { attribute: rule, }, { ["From" | "Subject" | "Any To or Cc", "X-Spam-Flag"]: { "operation": ["is" | "is not"], "value": ["compare string", "*substring*"] }, }, { "Message Size": { "operation": ["is" | "is not" | "less than" | "greater than"], "value": bytesInteger, }, }, ... ]
Возможно фильтровать по слеующим полям в сообщении:
From- Отправитель. Поле From в оригинальном сообщении.Subject- Тема сообщения. Поле Subject в оригинальном сообщении.Any To or Cc- Адресаты. Поля Cc или To в оригинальном сообщении.X-Spam-Flag- Флаг спама. Поле X-Spam-Flag в оригинальном сообщении.
При проверке размера сообщения (attribute == Message Size), операции сравнения меньше чем (less than) и больше чем (greater than) являются строгими.
-
actions, string, json object - Действие с письмами. Допускается одно действие. Формат:{ action: attribute }
{ ["Discard", "Mark", "Store in"]: "attribute" }
где
actionможет принимать следующие значения:Discard- Удалить письмо.attributeпри этом игнорируется.Mark- Пометить письмо прочтенным (attribute==Read) либо избранным (attribute==Flagged).Store in- Переместить в папкуattribute.Mirror to- Переслать письмо на email, который содержится вattribute.
{"status": "ok"}Удаляет правило существующее правило фильтрации.
userName, string - Имя пользователя в dbmail.ruleName, string - Название правила.
{"status": "ok"}Возвращает все активные правила у конкретного пользователя.
userName, string - Имя пользователя в dbmail.
{
"status": "ok",
"rules": {
"ruleName1": {
"rules": [
...
],
"actions": {
...
},
"rulesJoinOperator" : "[and | or]"
},
...
}
}Где rules - массив объектов с активными правилами. Ключ - идентификатор правила, значение - объект правила со свойствами rules и actions. Структура объектов rules и actions описана в /createRule
Создает правило для сборщика почты по протоколу POP3.
userName, string - Имя пользователя в dbmail.host, string - Хост pop3 сервера.email, string - Логин для авторизации на pop3 сервере.password, string - Пароль для авторизации.delete, необязательное, string, по умолчанию = "0". Установить в "1", если требуется удалять почту с удаленного почтового ящика после сбора.
{"status": "ok", "ruleId": "2"}Где ruleId - id созданного правила, string.
Изменяет правило для сборщика почты по протоколу POP3.
id, int - Id ранее созданного правила.userName, string - Имя пользователя в dbmail.host, string - Хост pop3 сервера.email, string - Логин для авторизации на pop3 сервере.password, необязательное, string - Пароль для авторизации. Если не указан - используется ранее заданный пароль.delete, необязательное, string, по умолчанию = "0". Установить в "1", если требуется удалять почту с удаленного почтового ящика после сбора.
{"status": "ok"}Удаляет правило существующее правило сборщика почты.
ruleId, string - Id правила.
{"status": "ok"}Возвращает все правила сборщика почты.
userName, string - Имя пользователя в dbmail.
{
"status": "ok",
"rules": [
{
"id": "1",
"host": "pop.mail.ru",
"email": "[email protected]",
"password": "strongPassword",
"dbMailUserName": "userName",
"delete": "0",
"ssl": "0",
"status": "1"
},
...
]
}Где:
id- Id правила,host,email,password,deleteсоответствуют полям в запросе на создание правила (/addGetMailRule)dbMailUserName- имя пользователя в dbmail,ssl- Правило использует ssl содинение ("1") или обычное ("0")statusможет принимать следующие значения:- "0" - Правило работает успешно.
- "1" - Правило еще не отрабатывалось.
- "2" - Неправильный пароль.
- "3" - Ошибка соединения с сервером pop3.
- "4" - Неправильный домен pop3 сервера.
- "5" - Неизвестная ошибка.